首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

pthread_cond_signal和pthread_cond_wait两个函数是如何意思

2012-09-03 
pthread_cond_signal和pthread_cond_wait两个函数是怎么意思?pthread_cond_signalpthread_cond_waitpthrea

pthread_cond_signal和pthread_cond_wait两个函数是怎么意思?
pthread_cond_signal
pthread_cond_wait

pthread_mutex_lock
pthread_mutex_unlock
这几个函数是什么意思?怎么用,希望回答详细点,我是小白

[解决办法]
条件变量是利用线程间共享的全局变量进行同步的一种机制,主要包括两个动作:一个线程等待"条件变量的条件成立"而挂起;另一个线程使"条件成立"(给出条件成立信号)。为了防止竞争,条件变量的使用总是和一个互斥锁结合在一起。

//thread1
pthread_mutex_lock(&mutex);

...//临界资源
...
pthread_cond_signal(&cond);//激活信号,激活一个等待该条件的线程
...

pthread_mutex_unlock(&mutex);


//thread2
pthread_mutex_lock(&mutex);

...//临界资源
...
pthread_cond_wait(&cond, &mutex);//等待条件变量通知
...

pthread_mutex_unlock(&mutex);


热点排行