不使用互斥 2个线程输出数组arr #include <string> #include <iostream> #include <Windows.h> using namespace std; HANDLE hMutex = NULL; int arr[5] = {1, 2, 3, 4, 5}; DWORD CALLBACK Thread1(LPVOID Param) { while(true) { //WaitForSingleObject(hMutex, INFINITE); cout << "Thread1:/t"; for (int i = 0; i < 5; i++) { cout << arr[i] << ' '; Sleep(50); } cout << endl; //ReleaseMutex(hMutex); } } DWORD CALLBACK Thread2(LPVOID Param) { while(true) { //WaitForSingleObject(hMutex, INFINITE); cout << "Thread2:/t"; for (int i = 0; i < 5; i++) { cout << arr[i] << ' '; Sleep(50); } cout << endl; //ReleaseMutex(hMutex); } } int main() { //hMutex = CreateMutex(NULL, NULL, NULL); CreateThread(NULL, 0 ,Thread1, NULL, NULL, NULL); CreateThread(NULL, 0 ,Thread2, NULL, NULL, NULL); while(true) { Sleep(100); } return 0; } #include <string> #include 你的当前访问异常,请进行认证后继续阅读剩余内容。 提交