在 iOS 上,如果有一个单一视图应用程序,并且使用以下命令创建一个新线程:
[NSThread detachNewThreadSelector:@selector(consumeData:)
toTarget:self.consumer withObject:self.queue];
其中consumer
是一个Consumer
对象,它将在方法内部处理数据consumeData
,而queue
是一个Queue
对象,它是消费者处理数据的来源。
但是如果线程需要检查主视图上的 Switch 是设置为 on 还是 off 怎么办?那就是切换Consumer
对象是否应该在此刻完成工作或暂停。应该withObject:self
改为使用,以便将整个 ViewController 引用传递给线程,然后线程将用于viewController.view.______
访问开关的值,并用于viewController.queue
访问队列,还是有更好或替代的方法?