boost::threads只提供两种线程同步原语:mutex和condition,mutex就不说了,对于c
ondition,我觉得他的应用是否太过苛刻,远不如windows下的event灵活,我感觉cond
ition无法实现event的全部功能,condition的用法是:
“条件变量的使用总是和互斥体及共享资源联系在一起的。线程首先锁住互斥体,然后
检验共享资源的状态是否处于可使用的状态。如果不是,那么线程就要等待条件变量。
要指向这样的操作就必须在等待的时候将互斥体解锁,以便其他线程可以访问共享资源
并改变其状态。它还得保证从等到得线程返回时互斥体是被上锁得。当另一个线程改变
了共享资源的状态时,它就要通知正在等待条件变量得线程,并将之返回等待的线程。
”