(下部分)NSURLSession的最大并發(fā) HTTPMaximumConnectionsPerHost屬性使用場景

接上篇:http://www.reibang.com/p/8d0875757205

NSURLSession和NSURLSessionConfiguration到底是什么關系

之前的錯誤理解點
  • NSURLSession是會話通道,每一個會話通道都可以使用單獨默認配置,并且默認支持iOS 4個TCP鏈接,OSX 6個tcp連接
  • 每一個NSURLSession都單獨對應一個NSURLSessionConfiguration對象的配置,只對NSURLSessionConfiguration這個配置自己負責
  • 創(chuàng)建多個Session可以增加我們的task并發(fā),加快多并發(fā)的網(wǎng)絡交互時間

但是經(jīng)過我的多次嘗試,發(fā)現(xiàn)我上述概念是錯誤的,我這邊是理解錯的了

探索理解記錄(在下面的demo中):

  • 因為之前的Demo中是For循環(huán)創(chuàng)建task,時間太短,個人猜疑會不會因為iOS總的線程總數(shù)超限制,造成了適應2個不同的session的時候,另外一個session雖然初始化完成,但是被第一個初始化的session把資源搶干凈了
  • 將代碼中的for循環(huán)創(chuàng)建task,改成timer每隔1秒去創(chuàng)建一個task,并且2個session混合循環(huán)創(chuàng)建task,查看task的創(chuàng)建記錄

總的經(jīng)過嘗試,正確的匯總:

  • NSURLSessionConfiguration無論使用哪一種配置,HTTPMaximumConnectionsPerHost賦予的值是所有類型:
    A. defaultSessionConfiguration,
    B. ephemeralSessionConfiguration,
    C. backgroundSessionConfiguration

    的可以同時并發(fā)的task的總的數(shù)量
  • NSURLSessionConfiguration如果使用系統(tǒng)提供的那三種類型,無論創(chuàng)建多少個NSURLSession,session之間共用的都是一個NSURLSessionConfiguration(最大并發(fā)的配置,感謝庚鑫
    提出的疑問,),也就是基本可以將NSURLSessionConfiguration理解為單個配置對象,但是單個配置對象都是共用 最大并發(fā)數(shù),然后大家共用這個最大并發(fā)數(shù),也就是大家操作的最后一次的配置為所有session使用的最終的配置

上述描述如果有同學感覺有疑問,可以提出疑問,這個是我測試的時候聯(lián)想的猜想,如果有不同的意見,懇請?zhí)岢?我也學習,互相學習,謝謝

這樣就解決了我們的之前的上部分的最后匯總的疑惑,但是除此之外,還有一個疑惑,那
對于我們在高并發(fā)的請求,期望快速做出反應的時候,除了設置HTTPMaximumConnectionsPerHost的值為一個我們能夠接受的比較大的值外,創(chuàng)建2個甚至多個NSURLSession是否還有什么意義呢? 這個通過查詢文檔,終于找到了合理解釋:

可以參看官方文檔的URL Loading System的官方介紹,下面才是期望的真正目的;

官網(wǎng)URL Loading System模塊介紹

創(chuàng)建多個Session的目的,不是為了增加并發(fā),而是為了對不同的Task使用不同的策略,來實現(xiàn)更符合我們需求的交互

希望我的整理能對大家對NSURLSession的理解有些益處,如果有不同意見的同學可以下面評論,互相交流,謝謝,

Demo測試地址: https://github.com/yangfangkuo/downLoadTest

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末舌涨,一起剝皮案震驚了整個濱河市额港,隨后出現(xiàn)的幾起案子陷猫,更是在濱河造成了極大的恐慌,老刑警劉巖善镰,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蝠引,死亡現(xiàn)場離奇詭異逢并,居然都是意外死亡弛矛,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來囤攀,“玉大人软免,你說我怎么就攤上這事》倌樱” “怎么了膏萧?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長蝌衔。 經(jīng)常有香客問我榛泛,道長,這世上最難降的妖魔是什么胚委? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任挟鸠,我火速辦了婚禮,結果婚禮上亩冬,老公的妹妹穿的比我還像新娘。我一直安慰自己硼身,他們只是感情好硅急,可當我...
    茶點故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著佳遂,像睡著了一般营袜。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上丑罪,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天荚板,我揣著相機與錄音,去河邊找鬼吩屹。 笑死跪另,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的煤搜。 我是一名探鬼主播免绿,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼擦盾!你這毒婦竟也來了嘲驾?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤迹卢,失蹤者是張志新(化名)和其女友劉穎辽故,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體腐碱,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡誊垢,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片彤枢。...
    茶點故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡狰晚,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出缴啡,到底是詐尸還是另有隱情壁晒,我是刑警寧澤,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布业栅,位于F島的核電站秒咐,受9級特大地震影響,放射性物質發(fā)生泄漏碘裕。R本人自食惡果不足惜携取,卻給世界環(huán)境...
    茶點故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望帮孔。 院中可真熱鬧雷滋,春花似錦、人聲如沸文兢。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽姆坚。三九已至澳泵,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間兼呵,已是汗流浹背兔辅。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留击喂,地道東北人维苔。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓,卻偏偏與公主長得像茫负,于是被迫代替她去往敵國和親蕉鸳。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,675評論 2 359

推薦閱讀更多精彩內(nèi)容