pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
pthread_cond_t cond = PTHREAD_COND_INITIALIZER;

pthread_mutex_lock(&mutex);          //加锁
pthread_mutex_unlock(&mutex);          //释放锁
pthread_cond_wait(&cond, &mutex);    //条件等待  进入此语句将加锁进行释放
pthread_cond_signal(&cond);          //激活条件
pthread_cond_broadcast(&cond);       //   广播    激活所有满足此条件的
pthread_create(&tid[i-1], NULL, thread_fun, &i);   //创建线程
pthread_join(tid[i], NULL);           //等待线程结束