我想在一個特定的函數中實現異步的url請求,我想要完成所有這些請求,然後執行一個特定的動作,但動作先於請求,即在請求完成之前調用它。dispatch_async裏面的異步url請求
dispatch_queue_t fetchQ = dispatch_queue_create("Featured Doc Downloader", NULL);
dispatch_async(fetchQ, ^{
[self myAsyncMultipleURLRequestFunction];
dispatch_sync(dispatch_get_main_queue(), ^{
[self updateUIFunction];
});
});
-(void)myAsyncMultipleURLRequestFunction
{
for (int i=0; i<count; i++)
{
NSURLConnection *loginConnection = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self];
}
}
現在在myAsyncMultipleURLRequestFunction完成所有請求之前調用updateUIFunction。也試過這與NSOperaitonQueue,但不能做我真正想要的。
[_operationQ addOperationWithBlock:^{
for (int i=0; i<count; i++)
{
NSURLConnection *loginConnection = [[NSURLConnection alloc] initWithRequest:theRequest delegate:self];
}
}
[[NSOperationQueue mainQueue] addOperationWithBlock:^{
// updating UI
[self updateUIFunction];
}];
}];
我知道這很簡單,但我運行失控時間,任何幫助表示讚賞。
我會試試這個,看起來很有前途。 – satheeshwaran
它適合你嗎? – aLevelOfIndirection