Objective-C在后台运行循环,同时保持UI功能?

时间:2017-05-26 22:17:28

标签: ios objective-c multithreading

如何在后台运行循环,例如:

while(1==1){
  NSLog(@"hello");
}

同时能够检测按钮点击,例如:

- (IBAction)button:(id)sender {
    //do something
  }

2 个答案:

答案 0 :(得分:0)

阅读Apple的Concurrency Programming GuideThreading Programming Guide

其中第一个将向您介绍操作队列NSOperation)和调度队列(GCD),第二个是线程({{1} }& Posix)。

如果在阅读本指南后您不确定采取哪种方法,至少在上面提到的情况下,首先考虑GCD,然后考虑操作队列。

如果您无法实施解决方案,请提出一个新问题,展示您的代码并解释您的问题。有人无疑会帮助你。

HTH

答案 1 :(得分:0)

您可以使用GCD在后台线程上运行代码。

encoding='utf-8'