1 线程的等待与通知
线程的异步通知机制。一个线程正在等待某件事件的发生(在阻塞),另外一个线程触发一个信号,通知这个线程继续往下运行。请参考如下的程序段,
#include <pthread.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <sys/time.h>
#include <stdio.h>
#include <limits.h> //PTHREAD_STACK_MIN
/**
* @brief gettimeofday() 函数封装一下,主要是怕这个函数不是线程安全
*/
pthread_mutex_t pGetTime = PTHREAD_MUTEX_INITIALIZER;
void gettimeofdayHaxMutex(struct timeval *tv) //主要担心 gettimeofday 并不是线程安全的函数
{
pthread_mutex_lock(&pGetTime);
gettimeofday(tv,NULL);
pthread_mutex_unlock(&pGetTime);
}
pthread_mutex_t mutex = PTHREAD_MUTEX_IN