我想在后台线程中异步加载一些东西(大)(与 NSOperation 一起使用)。
经过多次搜索,我遇到了两个选项:第一个是使用:
CFRunLoopRun()
在这个链接中解释得很精彩: http ://www.russellj.co.uk/blog/2011/07/09/nsurlconnection-in-a-background-thread/
第二个是使用:
NSPort* port = [NSPort port];
NSRunLoop* rl = [NSRunLoop currentRunLoop]; // Get the runloop
rl addPort:port forMode:NSDefaultRunLoopMode];
在这个链接中解释得很好:http: //www.cocoaintheshell.com/2011/04/nsurlconnection-synchronous-asynchronous/
我真的想使用第一个选项,因为它非常优雅和可读性。但恐怕我不太了解这两种方法之间的区别。
感谢帮助。