在发布通知之前,有什么方法可以让方法睡眠吗?这是针对异步NSURLConnection
的。由于多种原因,我无法转移到同步连接。
答案 0 :(得分:1)
方法不能“睡觉”;这只适用于线程。只需将需要等待的代码拆分为另一个方法,并在通知到达时调用该方法。
- (void) doStuffBeforeConnection {
[self doPreConnectionStuff];
NSURL * url = [NSURL URLWithString:@"/U/R/L"];
NSURLRequest * request = [NSURLRequest requestWithURL:url
cachePolicy:NSURLRequestReturnCacheDataElseLoad
timeoutInterval:0];
NSURLConnection * conn = [NSURLConnection connectionWithRequest:request
delegate:self];
return;
// We are now "waiting"...
}
- (void) connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
[self nowDoStuffThatNeededToWait:response];
}
答案 1 :(得分:-1)
使用addobserver并设置一个带有选择器的目标类,以便在通知时触发。 当你需要触发时,使用带有notificatonName的postNotification。 你去.. !!