一、关于CMutex类
1、CMutex只是对 win32API
的互斥操作进行了封装
2、它的参数与 win32 API 中的
CreatMutex() 相对应
3、CMutex的构造函数调用
CreatMutex() 创建并检查
4、其Lock操作从基类继承,调用WaitForSingleObject()获得所有权,互斥类重载 Unlock
调用ReleaseMutex()释放所有权。
所以,MFC其实就是简单了封装了 win32 API 函数。
二、CMutex的实现:
1、CMutex::CMutex(BOOL
bInitiallyOwn, LPCTSTR pstrMame)
2、CMutex::~CMutex()
3、BOOL CMutex::Unlock()
三、使用,用法:
首先,创建工程——win32 console
Application——工程名——OK——an application that supports MFC——finish
1、例子1,单独操作(伪代码)
CMutex mutex; //声明互斥
UINT mythreadA:mutex.Lock();
//动作
mutex.Unlock();
Sleep(1000);
UINT mythreadB:mutex.Lock();
//动作
mutex.Unlock();
Sleep(1000);
int _tmain():int flag=0;
if(!Afx