ACE_Thread_Mutex nm, iom;
int n = 0;
static ACE_THR_FUNC_RETURN func(void* arg) {
while (n < 5) {
{
ACE_Guard<ACE_Thread_Mutex> guard(nm);
++n;
}
ACE_OS::sleep(1);
ACE_Guard<ACE_Thread_Mutex> guard2(iom);
int k = (int) arg;
ACE_DEBUG((LM_DEBUG, "(%t) %d and k is: %d\n", n, k));
}
return 0;
}
int main() {
int k = 10000;
ACE_Thread_Manager::instance()->spawn_n(3, func, (void*) k,
THR_SCOPE_SYSTEM | THR_NEW_LWP);
ACE_Thread_Manager::instance()->wait();
}
ACE_Guard守护互斥体锁
最新推荐文章于 2024-05-20 09:34:54 发布