C++ 如何在Visual C++;2010

C++ 如何在Visual C++;2010,c++,multithreading,visual-studio-2010,visual-c++,locking,C++,Multithreading,Visual Studio 2010,Visual C++,Locking,看来VC++2010不支持互斥。我有一个函数如下 DWORD WINAPI WatchItThreadProc(LPVOID lpParam) { int *t=static_cast<int*>(lpParam); while (true) { short cpuUsage = usage.GetUsage(DWORD(*t)); printf("Thread id %d: %d%% cpu usage\n", *t

看来VC++2010不支持互斥。我有一个函数如下

DWORD WINAPI WatchItThreadProc(LPVOID lpParam)
{


    int *t=static_cast<int*>(lpParam);  
    while (true)
    {
        short cpuUsage = usage.GetUsage(DWORD(*t));

        printf("Thread id %d: %d%% cpu usage\n", *t, cpuUsage);
        Sleep(500);
    }
}
DWORD    i1=2632;
DWORD    i2=4040;

void *p1=&i1;
void *p2=&i2;


CreateThread(NULL, 0, WatchItThreadProc, p1, 0, NULL);
CreateThread(NULL, 0, WatchItThreadProc, p2, 0, NULL);
我需要同步这两个线程以避免争用情况。如何用Visual C++ 2010实现?< /P> < P>互斥体是支持的。 参考:


您只需创建mutex()、WaitForSingleObject()和稍后的ReleaseMutex()来同步两个线程。您可能忘记了指向内核32库的链接。

您为什么认为2010不支持互斥体?看这里