有人可以提供C++应用程序中std::this_thread::yield()
用法的真实示例吗?
最佳答案
我在实现std::lock的过程中使用了yield,可以在这里找到:
http://llvm.org/svn/llvm-project/libcxx/trunk/include/mutex
事实证明,一次锁定多个锁/互斥锁时,如果一次失败,则可以通过使用yield来加快应用程序的运行速度,然后再尝试以其他顺序进行锁/互斥锁。
在此源代码中,我实际上是在调用sched_yield()
。但这仅是为了以我想要的方式获取 header 依赖项。在这个平台上,std::this_thread::yield()
只不过是对sched_yield()
的调用:
http://llvm.org/svn/llvm-project/libcxx/trunk/include/thread
关于multithreading - std::this_thread::yield()用法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5604059/