我很好奇是否有人使用过类似的东西:
pthread_mutex_lock(&ctx->processing_pipeline.feeder_safe_point_mutex);
while(!ctx->processing_pipeline.feeder_safe_point)
pthread_cond_wait(&ctx->processing_pipeline.feeder_safe_point_cv, &ctx->processing_pipeline.feeder_safe_point_mutex);
pthread_mutex_unlock(&ctx->processing_pipeline.feeder_safe_point_mutex);
...在等待 condvar 时。
这个想法是当事件完成时feeder_safe_point
int
变量将被设置1
,然后等待线程将被唤醒。
另外,使用 condvars 序列化多个线程的执行的推荐方法是什么