static void
barrier()
{
pthread_mutex_lock(&bstate.barrier_mutex);
bstate.nthread++;
if(bstate.nthread < nthread){
pthread_cond_wait(&bstate.barrier_cond,&bstate.barrier_mutex);
}
if(bstate.nthread == nthread){
bstate.round++;
bstate.nthread = 0;
pthread_cond_broadcast(&bstate.barrier_cond);
}
pthread_mutex_unlock(&bstate.barrier_mutex);
}
Barrier
最新推荐文章于 2024-05-22 00:03:53 发布