【发布时间】:2011-03-08 21:05:16
【问题描述】:
我有一个有 2 个线程(A 和 B)的程序。是否可以在线程 B 中定义一个代码块,一旦进入该代码块就会暂停线程 A,直到该块执行完毕?
我正在使用 C++ 和库 boost::thread 1.44
编辑:我遇到的问题是我无法访问线程 A 中的代码,因为它是一个非线程安全库,所以我无法控制它何时访问我的共享资源。我对我的代码进行了一些架构更改,现在资源不再共享,问题得到解决。
【问题讨论】:
-
如果线程 A 持有线程 B 所需的锁怎么办?
-
@Mike daniels,好点子!我重新设计了我的代码,所以我可以使用互斥锁
标签: c++ multithreading boost boost-thread