2011-11-08 57 views
0

如何制作API请求队列?所以我有一些功能:Facebook Graph API请求队列(iOS)

... 

- (void) getUserBasicInfo:(NSString *)stringWithContestOfId; 
- (void) getMyFriends; 
- (void) getMyEducation; 

... 

我想做一个函数,调用所有这些功能。如何暂停,直到第一个功能完成?我试图做这样的事情:

... 

[currentUser getMyCurentCity]; 
    while ([currentUser getFlag] != TRUE) { 
     [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]]; 
}  

[currentUser getMyCurentCity]; 

... 

getFlag - 返回成功标志的职能,这成为真正:

- (void)request:(FBRequest *) request didReceiveResponse:(NSURLResponse *)response{ 
    flag = TRUE; 
    NSLog(@"I have some information"); 
} 

但是最后当我用这个方法存在的只有一种成功,请求许多。你有更多的想法如何做到这一点?这将是完美的,像:NSOperationQueue。

回答

0

谢谢大家......

[currentUser getMyCurentCity]; 
while ([currentUser getFlag] != TRUE) { 
    [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]]; 
} 
[currentUser setFlagFalse]; 
[currentUser getUserBasicInfo:@"me"]; 
while ([currentUser getFlag] != TRUE) { 
    [[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]]; 
} 
[currentUser setFlagFalse];