Re: [問題] 如何批次執行一個method?
※ 引述《kiii210 (Johnny.T)》之銘言:
: 不是三個圖檔"同步"下載, 而是下載完1換下載2,
: 下載完2換下載3, 結束.
: (類似下載工具只限制一次只能下載一個檔案, 而排隊中的檔案有3個,
: 所以一次只能下載一個, 下載完自動下載另一個)
: [SDWebImageDownloader.sharedDownloader
: downloadImageWithURL:img_largeURL options:0
: progress:^(NSUInteger receivedSize, long long expectedSize) {
: /*Block 1 */
: }
: completed:^(UIImage *image, NSData *data , NSError *error, BOOL finished) {
: /* Block 2 */
: if ( finished && image ) {
: }}];
看起來可以遞迴一下
...
NSMutableArray *URLs
...
- (void)consumeURLs
{
NSURL *URL = [URLs lastObject];
[URLs removeLasObject];
if (!URL)
return; // All done
id dlr = [SDWebImageDownloader sharedDownloader];
[dlr downloadImageWithURL:URL
options:0
progress:^(NSUInteger rsz, long long esz) {
// Whatever
}
completed:^(UIImage *i, NSData *d , NSError *e, BOOL f) {
[self consumeURLs];
}];
}
以上是直接打字的, 可能有小錯誤不過大致上概念是這樣
至於發生錯誤的時候要怎麼處理(要重傳還是怎樣)就看你自己了
--
"問おう、貴方が私のマスターか?"
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.81.146
※ 編輯: uranusjr 來自: 114.32.81.146 (02/14 06:00)
推
02/14 11:47, , 1F
02/14 11:47, 1F
→
02/14 12:17, , 2F
02/14 12:17, 2F
→
02/14 12:20, , 3F
02/14 12:20, 3F
推
02/15 12:45, , 4F
02/15 12:45, 4F
推
02/16 06:45, , 5F
02/16 06:45, 5F
討論串 (同標題文章)