我使用的是图如下:pthread_cond_t是一个对象还是什么?
键--->任务ID
价值观--->pthread_cond_t
对象
当某个任务完成后,我醒来相关联的所有pthreads
它使用匹配的pthread_cond_t
元素。
我的问题很简单 - 什么是pthread_cond_t
?它是一个对象吗?因为如果我删除它,地图会调用它对我不好的构造函数。如果它不是 - 我能不能回
pthread_cond_t cond = *(_flushCond->operator [](task_id)); //map of conditions
_flushCond->operator [](task_id) = NULL;
return cond;
我所试图做的是免费地图供以后使用(我重用的ID)的对象,并返回pthread_cond_t
对象在那里。
pthread是一个C API,所以不会有构造函数或任何东西。你应该能够自由地传递它。 –
但它有没有任何指针,或其他任何原始类型? – yotamoo
这是一个不透明的类型,所以你的代码不应该关心里面的东西。 –