我试图弄清楚如何在Objective-C(iOS)中执行日志运行任务,而不会挂起UI线程,有点像.Net中的后台工作人员或TPL。
我正在寻找一种以可维护的方式处理此类工作的方法,这被认为是iOS开发人员的最佳实践?
最佳答案
您可以通过多种方式执行此操作,例如NSThread
,NSOperation
/NSOperationQueue
类或GCD
。示例代码(GCD):
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
//background work
});
您可以在这里阅读有关信息:Concurrency Programming Guide