使用DEV C++打开:
这是进程同步与互斥代码,第一次自己写的,写得不好多多支持
#include<stdio.h>
#include<windows.h>
#include<string>
using namespace std;
FILE* fw;
HANDLE event;
char s[1]={'w'};
void suo(){
WaitForSingleObject(event,INFINITE);
}
DWORD athread(LPVOID p){
long long A=(long long)p;
printf("当前调用:%d\n",A);
char msg;
itoa(A,&msg,10);
HANDLE hMutex = CreateMutex(NULL,FALSE,"MyFileMutex");
suo();
fw=fopen("1.txt","a+");
fwrite(&msg,1,1,fw);
fwrite(&s[0],1,1,fw);
fclose(fw);
ReleaseMutex(hMutex);
SetEvent(event);
return 0;
}
int main(){
HANDLE Hthread[6];
event=CreateEvent(NULL,false,true,"a");
for(int i=0;i<=5;i++){
Hthread[i]=CreateThread(NULL,0,athread,(LPVOID)i+1,0,0);
Sleep(1000);
}
WaitForMultipleObjects(4,Hthread,1,INFINITE);
return 0;
}