达尔文:线程暂停/唤醒

时间:2016-08-07 01:02:46

标签: ios multithreading posix bsd mach

使用案例:

  

主题 A :请将我从活动线程池中删除,即Scheduler先生。

     

线程 B :Scheduler先生,请将线程 A 添加到活动状态   线程池,如果他不在那里

这是一个相当具体且包含得很好的问题。当然,我可以使用pthread的条件变量来做到这一点 - 但它们解决了一个更复杂的问题。

想知道是否有更直接的路线可用。例如, sigwait

1 个答案:

答案 0 :(得分:0)

主题A:

thread_t thread_a = mach_thread_self();
thread_suspend(thread_a);

主题B:

thread_resume(thread_a);