* 条件变量检测 条件检测在互斥锁的保护下进行 如果条件为假,一个线程自动阻塞 若另一个线程改变了条件,它发信号给关联的条件变量,唤醒一个或多个等待它的线程,重新获得互斥锁,重新评价条件 * 条件变量的初始化 声明条件变量:pthread_cond_t 类型 使用前必须初始化,有两种方法初始化方法 静态方式 pthread_cond_t condition=PTHREAD_COND_INITIALIZER 动态方式 int pthread_cond_init(pthread_cond_t *cond, const pthread_condattr_t *attr) 被创建的条件变量ID通过 参数返回给调用线程 该方法允许设置条件变量属性 * 条件变量的销毁 函数原型 int pthread_cond_destroy(pthread_cond_t *cond); 功能说明 销毁指定条件变量,同时释放为其分配的资源 * 条件变量的等待 函数原型 int pthread_cond_wait(pthread_cond_t *cond, pthread_mutex_t *mutex); int pthread_cond_timedwait(pthread_cond_t *cond, pthread_mutex_t mytex, const struct timespec *abstime
原创力文档

文档评论(0)