用例是:控件对象是一个视图,我想显示有关工作线程中发生的情况的信息,并允许我通过工作人员“单步”,因为它是事情.
我在工作中的丑陋和沉重的事情是这样的:
NSLog(@"paused");paused = YES;while (paused){ [NSThread sleepForTimeInterval:0.25];}NSLog(@".. continuing");
…但是我不禁想到必须有一个更好的方式,也许涉及NSLocks,或者一些这样的.
评论,提示建议?
谢谢!
解决方法 查看“线程指南”中的 NSCondition和 Conditions部分.代码将如下所示:NSCondition* condition; // initialize and release this is your app requires.//Worker thread:while([NSThread currentThread] isCancelled] == NO){ [condition lock]; while(partySupplIEsAvailable == NO) { [condition wait]; } // party! partySupplIEsAvailable = NO; [condition unlock];}//Main thread:[condition lock];// Get party supplIEspartySupplIEsAvailable = YES;[condition signal];[condition unlock];总结
以上是内存溢出为你收集整理的可可 – 如何暂停NSThread直到通知?全部内容,希望文章能够帮你解决可可 – 如何暂停NSThread直到通知?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)