我想知道在Linux上如何创建互斥锁?我想通了,那pthread_mutex_init()
变量值不变,所以如何“创建”互斥量?在Linux上如何创建互斥锁?
它将这个变量标记为某种系统资源还是什么?
我正在实施的R值构造函数的类,它有它的身体pthread_mutex_t
场,我不知道该怎么移动互斥弗罗姆一类到另一个...
我想知道在Linux上如何创建互斥锁?我想通了,那pthread_mutex_init()
变量值不变,所以如何“创建”互斥量?在Linux上如何创建互斥锁?
它将这个变量标记为某种系统资源还是什么?
我正在实施的R值构造函数的类,它有它的身体pthread_mutex_t
场,我不知道该怎么移动互斥弗罗姆一类到另一个...
你似乎想要将互斥锁的所有权交给另一个类。你确定这是解决你的问题的正确方法吗?如果你确实需要,虽然这样做,你可以创建一个auto_ptr以绕过所有权:
class A
{
A(const A & other) mutex(other.mutex) { /* ... */ }
auto_ptr<pthread_mutex_t> mutex;
}
那么,这是一些colution,但是我是想实现一个R值的构造函数,以避免使用动态内存alocation。而且,当使用C++ 0x时,我们应该避免'auto_ptr'。 – Goofy 2011-01-09 23:01:55