我尝试初始化互斥锁(VS 2008 / windows xp sp2),但每次运行我的应用程序时,行:
pthread_mutex_init(&mutex, NULL);
给了我以下错误:
0xC0000096: Privileged instruction.
我声明我的互斥锁:
static pthread_mutex_t mutex;
我试着不要把pthread_mutex_init称为我的互斥锁:
static pthread_mutex_t mutex= PTHREAD_MUTEX_INITIALIZER;
但
pthread_mutex_lock(&mutex);
因0xC0000096:特权指令错误而崩溃。
我做错了什么?
答案 0 :(得分:0)
在Windows上,您必须使用CreateMutex
API初始化互斥锁对象
或者您可以使用新的C ++ mutex
类,前提是您的编译器支持它。