1

我尝试初始化一个互斥锁(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 崩溃:特权指令错误。

我究竟做错了什么 ?

4

1 回答 1

0

在 Windows 上,您必须使用CreateMutexAPI 来初始化互斥对象。
或者,您可以使用新的 C++mutex类,前提是您的编译器支持它。

于 2013-01-16T09:48:43.720 回答