我有一個應用程序,用戶可以下載文檔。用戶可以選擇下載多個文件。多個下載按順序依次發生(一旦文檔完成下載,另一個應自動啓動)。使用NSURLConnection在隊列中異步下載
目前我使用NSURLConnection異步下載數據(單個文檔一次)。
我該如何去實現這可能使用NSOperation隊列?
我有一個應用程序,用戶可以下載文檔。用戶可以選擇下載多個文件。多個下載按順序依次發生(一旦文檔完成下載,另一個應自動啓動)。使用NSURLConnection在隊列中異步下載
目前我使用NSURLConnection異步下載數據(單個文檔一次)。
我該如何去實現這可能使用NSOperation隊列?
而不是排隊NSOperations爲什麼不存儲下載「項目」(例如,你要下載的URL)一個NSArray,那麼當一個你的NSURLConnections完成下載你可以檢查數組,如果有任何內容,你可以啓動一個新的NSURLConnection下載,然後刪除你剛剛下載的項目。
這樣,如果您在每次下載之間將下載項目數組存儲在磁盤上,如果您的應用程序崩潰或終止,它可以從停止的位置啓動。
創建NSOperation
對象並將其添加到NSOperationQueue
。按照this
鏈接到板條箱NSOperation和NSOperationQueue。
然後設置最大的併發操作一個使用NSOperationQueue
方法
setMaxConcurrentOperationCount