在WIN8.1下面安装VC++6.0会遇到兼容性的问题,只需要将安装目录(
D:\...\Common\MSDev98\Bin
)下面的MSDEV.EXE 改成 MSDEV3.EXE 即可 如下:
第一次运行可能还出现兼容问题,关闭在运行即可。
下面简单介绍一个多线程的例子:平台(win8.1 VC++6.0)
#include <iostream.h>
#include <windows.h>
DWORD WINAPI Fun1Proc(LPVOID lpParameter); //线程人口1,2
DWORD WINAPI Fun2Proc(LPVOID lpParameter);
int tickets = 100; //共享资源
HANDLE hMutex; //互斥对象
void main(){
HANDLE handle1;
HANDLE handle2;
hMutex = CreateMutex(NULL,false,NULL);
handle1 = CreateThread(NULL,0,Fun1Proc,NULL,0,NULL); //创建线程
handle2 = CreateThread(NULL,0,Fun2Proc,NULL,0,NULL);
CloseHandle(handle1);
CloseHandle(handle2);
Sleep(4000);
}
DWORD WINAPI Fun1Proc(LPVOID lpParameter){
while(true){
WaitForSingleObject(hMutex,INFINITE); //等待信号 拥有权限
if(tickets>0){
cout<<"thread1 sell tickets"<<tickets--<<endl;
}
else{
break;
}
ReleaseMutex(hMutex); //释放互斥对象
}
return 0;
}
DWORD WINAPI Fun2Proc(LPVOID lpParameter){
while(true){
WaitForSingleObject(hMutex,INFINITE);
if(tickets>0){
cout<<"thread2 sell tickets"<<tickets--<<endl;
}
else{
break;
}
ReleaseMutex(hMutex);
}
return 0;
}