2.0使用的NSURLConnection,3.0使用的是NSURLSession,
1)NSURLConnection下載文件時(shí)闻牡,先是將整個(gè)文件下載到內(nèi)存,然后再寫入到沙盒俺泣,如果文件比較大,就會(huì)出現(xiàn)內(nèi)存暴漲的情況。而使用NSURLSessionUploadTask下載文件仑撞,會(huì)默認(rèn)下載到沙盒中的tem文件中,不會(huì)出現(xiàn)內(nèi)存暴漲的情況妖滔。
2)NSURLConnection停止請(qǐng)求的發(fā)送隧哮,停止后不能繼續(xù)訪問,需要?jiǎng)?chuàng)建新的請(qǐng)求座舍。NSURLSession有三個(gè)控制方法沮翔,取消(cancel)、暫停(suspend)曲秉、繼續(xù)(resume)采蚀,暫停以后可以通過繼續(xù)恢復(fù)當(dāng)前的請(qǐng)求任務(wù)疲牵。
3)AFN3.0 NSURLSession 不需要2.0NSURLConnection 的常駐線程。
2.0需要常駐線程是因?yàn)檎?qǐng)求回調(diào)依賴當(dāng)前線程榆鼠,而AFN3.0 NSURLSession的請(qǐng)求回調(diào)不需要依賴當(dāng)前線程纲爸,可以指定回調(diào)的delegateQueue,這樣也就不需要再對(duì)線程進(jìn)行弊惫唬活识啦。
等等還有其他的不同。神妹。袁滥。