2015-04-01 41 views
1

當我創建並啓動20個NSURLSessionUploadTasks時,即使HTTPMaximumConnectionsPerHost設置爲20,也只有在任何時候都會運行3-4個!有什麼辦法可以讓NSURLSession同時運行4個以上的NSURLSessionUploadTasks?

據我所知,我可以用HTTPMaximumConnectionsPerHost非常容易地限制最大上傳數量。但是,我想增加併發上傳的數量。我已經開始'恢復'20個新任務,但只有3個或4個將同時運行。當一個批次結束時,將開始3或4個,直到所有任務完成。這是不行的,因爲我的服務器需要大量的時間來處理每個上傳,這意味着我的服務器正在響應POST請求時,我沒有從用戶的可用帶寬中獲得太多。

如何使NSURLSession運行到HTTPMaximumConnectionsPerHost? HTTPMaximumConnectionsPerHost可以正常工作來限制併發上傳的數量,但NSURLSession似乎無論爲HTTPMaximumConnectionsPerHost設置的值如何都會自行降低到3或4。這意味着HTTPMaximumConnectionsPerHost只允許您選擇1到4個併發上傳,而不是1到YOUR_MAX併發上傳!

爲了清楚起見,我的問題是,有沒有辦法在NSURLSessionUploadTask的同時運行5個或更多的併發上傳?

+0

當您使用Wi-Fi和電源時,此行爲是否仍會重現? – dgatwood 2016-10-19 01:48:51

+0

順便說一句,最可能的答案是「使用多個會話」,但我沒有嘗試過。 – dgatwood 2016-10-19 01:49:32

回答

0

NSURLSessionUploadTask yes。

NSURLSession no。

相關問題