📄 polling.c
字号:
/******************************************************** * An example source module to accompany... * * "Using POSIX Threads: Programming with Pthreads" * by Brad nichols, Dick Buttlar, Jackie Farrell * O'Reilly & Associates, Inc. * ******************************************************** * polling.c * * Showing polling of condition versus proper condition * variable use. */#include <pthread.h> pthread_mutex_t db_lock=PTHREAD_MUTEX_INITIALIZER;pthread_cond_t db_inited=PTHREAD_COND_INITIALIZER;int db_initialized=0;r1(){ pthread_mutex_lock(&db_lock); while(!db_initialized) { pthread_mutex_unlock(&db_lock); sleep(1); pthread_mutex_lock(&db_lock); } pthread_mutex_unlock(&db_lock); /* go do something */}r2(){ pthread_mutex_lock(&db_lock); while(!db_initialized) pthread_cond_wait(&db_inited, &db_lock); pthread_mutex_unlock(&db_lock); /* go do something */}main(){}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -