ACE多线程编程(一)
使用ACE进行多线程编程的内容相对较多,分多篇总结。
本文中主要介绍线程的创建、互斥体和线程间通信。
1、线程的创建使用ACE进行多线程编程比较简单,只需:
注:如果父线程没有等待子线程,而是提前退出,则子线程也将被迫终止。
2、互斥体ACE提供了一系列的互斥体,互斥体提供了简单的acquire()和release()接口。在多线程的互斥保护中,我们可以使用ACE_Thread_Mutex互斥体。
举一个简单的例子,多个线程使用同一个socket发送数据,为了防止交叉写,我们需要使用互斥体,示例代码如下: