www.pudn.com > os_example.rar > InterlockedIncrement.cpp
#include#include #include #include #define THREAD_INSTANCE_NUMBER 3 //全局变量 LONG lCounter=0; DWORD SubThread(void * pD) { int iTemp=(int)pD; cout << "SubThread" << iTemp << endl; for(long i=0;i<8;i++) { InterlockedIncrement(&lCounter); long lCopy=lCounter; Sleep(100); cout << "thread " << iTemp <<":" << lCopy << endl; } return 0; } void main(void) { cout << "CreateThread" << endl; // Create a thread; DWORD IDThread[THREAD_INSTANCE_NUMBER]; HANDLE hThread[THREAD_INSTANCE_NUMBER]; int i; //创建线程 for (i=0;i