Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 需要后台处理。线_Objective C_Cocoa_Networking_Background Process - Fatal编程技术网

Objective c 需要后台处理。线

Objective c 需要后台处理。线,objective-c,cocoa,networking,background-process,Objective C,Cocoa,Networking,Background Process,我需要一个后台进程每分钟左右运行一次。我不希望此过程干扰应用程序其余部分的响应。这是一个很好的线程候选吗?如果是这样的话,您会建议我如何设置线程?特别是,哪些类/方法适合研究?这听起来是NSOperation和NSOperationQueue的一个很好的候选者-将您的工作单元打包为一个操作,并在必要时启动它。对于每分钟左右的工作,NSTimer是一个不足为奇的选择。它听起来像是NSOperation和NSOperationQueue的一个很好的候选者-将您的工作单元打包为一个操作,并在必要时启动

我需要一个后台进程每分钟左右运行一次。我不希望此过程干扰应用程序其余部分的响应。这是一个很好的线程候选吗?如果是这样的话,您会建议我如何设置线程?特别是,哪些类/方法适合研究?

这听起来是NSOperation和NSOperationQueue的一个很好的候选者-将您的工作单元打包为一个操作,并在必要时启动它。对于每分钟左右的工作,NSTimer是一个不足为奇的选择。

它听起来像是NSOperation和NSOperationQueue的一个很好的候选者-将您的工作单元打包为一个操作,并在必要时启动它。对于每一分钟左右的工作,NSTimer是一个不足为奇的选择。

这取决于后台进程的紧密程度。制作一个在后台运行的单独程序可能是一个更好的主意

首先,看看苹果的


多线程编程不适合胆小的人,因此您需要确保理解其背后的思想和注意事项,并可能首先尝试其他解决方案。如果这个后台进程不是很繁重,那么几乎可以肯定的是,只需在主线程上使用一个计时器就可以了。如果它与应用程序的内部结构没有紧密联系,那么一个辅助程序可能是一个好主意。

这取决于后台进程的联系有多紧密。制作一个在后台运行的单独程序可能是一个更好的主意

首先,看看苹果的


多线程编程不适合胆小的人,因此您需要确保理解其背后的思想和注意事项,并可能首先尝试其他解决方案。如果这个后台进程不是很繁重,那么几乎可以肯定的是,只需在主线程上使用一个计时器就可以了。如果它与应用程序的内部结构没有紧密联系,那么一个辅助程序可能是一个好主意。

这实际上取决于后台进程正在做什么,它需要访问什么资源等等。如果您只想调用someMethod:everyminute,那么就使用NSTimer。如果您确实需要NSOperationQueue之类的东西,我建议您研究一下这个替代品,它解决了当前实现中的一些错误


这实际上取决于后台进程正在做什么,它需要访问哪些资源等等。如果您只想调用someMethod:everyminute,那么就使用NSTimer。如果您确实需要NSOperationQueue之类的东西,我建议您研究一下这个替代品,它解决了当前实现中的一些错误


苹果现在已经修复了这个错误,我们可以再次自由使用NSOperationQueue——苹果现在已经修复了这个错误,我们可以再次自由使用NSOperationQueue-