Tur*_*age 4 iphone objective-c nsthread ios
我最近发现,当等待我的NSURLConnections通过它时,如果我告诉等待线程做的话,效果会好得多:
[[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]];
代替
[NSThread sleepForTimeInterval:1];
在阅读了一些关于NSRunLoop runMode:beforeDate之后:听起来它总是优于睡眠.有人发现这是真的吗?
小智 9
是的,NSRunLoop更好,因为它允许runloop在您等待时响应事件.如果你只是睡觉你的线程你的应用程序将阻止即使事件到达(如你正在等待的网络响应).
我通常有这种结构:
while ([self isFinished] == NO) {
[[NSRunLoop currentRunLoop] runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]];
}
Run Code Online (Sandbox Code Playgroud)
然后当你想要阻止阻止时,将isFinished返回true.Eith
| 归档时间: |
|
| 查看次数: |
4345 次 |
| 最近记录: |