使用pthread_cond_timedwait把一个线程作为一个定时器使用.
2009-02-10 15:57
549 查看
#include <pthread.h> #include <stdio.h> #include <unistd.h> #include <stdlib.h> void * Proc(void * arg) { pthread_cond_t cond; pthread_mutex_t mutex; pthread_mutex_init(&mutex,NULL); pthread_cond_init(&cond,NULL); timespec to; int i = 0; pthread_mutex_lock(&mutex); to.tv_sec = time(NULL) + 3; to.tv_nsec = 0; while (i < 5) { int err = pthread_cond_timedwait(&cond, &mutex, &to); if (err == ETIMEDOUT) { printf("time out %d: dispatch something.../n",i); i++; } } pthread_mutex_unlock(&mutex); } int main() { pthread_t pid; int i=0; printf("create thread.../n"); pthread_create(&pid,0,Proc,0); pthread_join(pid,NULL); sleep(1); printf("Succeed exit!/n"); }
相关文章推荐
- 原创 使用pthread_cond_timedwait把一个线程作为一个定时器使用.
- 使用pthread_cond_timedwait把一个线程作为一个定时器使用.
- 关于如何使用pthread_cond_timedwait()超时接口
- pthread_cond_wait/pthread_cond_timedwait使用注意
- Linux下c开发 之 线程通信与pthread_cond_wait()的使用
- 线程通信与pthread_cond_wait()的使用
- pthread_cond_timedwait的使用及疑问
- Linux下c开发 之 线程通信与pthread_cond_wait()的使用
- 关于如何使用pthread_cond_timedwait()超时接口
- 关于如何使用pthread_cond_timedwait()超时接口
- Linux 线程通信与pthread_cond_wait()的使用
- Linux下c开发 之 线程通信与pthread_cond_wait()的使用
- C/C++ pthread_cond_timedwait()函数使用心得
- Linux下c开发 之 线程通信与pthread_cond_wait()的使用
- 使用pthread_cond_timedwait()超时时间设置问题
- linux pthread_cond_timedwait() 线程同步
- [Linux线程]使用pthread_create函数来创建一个线程
- 线程间通讯《代码》pthread_cond_wait/signal
- pthread_cond_signal只能唤醒已经处于pthread_cond_wait的线程
- SB了,pthread_cond_wait(),在等待的时候会解锁(阻塞之后,解锁mutex给别的线程),唤醒后加锁,