我可以在clone(2)(C/C++)中使用哪些同步原语?

sho*_*app 3 c c++ linux multithreading

使用Linux的clone(2)线程时,我可以使用哪些C++同步原语? 我特别不能使用pthreads,因为我正在构建一个共享库,用不同的定义替换许多pthreads的函数调用,但我需要某种互斥量.

编辑:我可能说得太早,我查看了pthread文档,他们使用futex(2)来实现这些原语.我假设我也是这样做的呢?

osg*_*sgx 7

您可以使用futex http://en.wikipedia.org/wiki/Futex

以下是基于futex的简单互斥和cond var http://locklessinc.com/articles/mutex_cv_futex/