- Auto_Mtx.h
#pragma once
#ifndef _AUTO_MTX_
#define _AUTO_MTX_
template<class T>
class Auto_Mtx
{
public:
Auto_Mtx(T p) :mtx(p) {
WaitForSingleObject(mtx, INFINITE);
};
~Auto_Mtx() {
ReleaseMutex(mtx);
};
private:
T mtx;
};
#endif // !_AUTO_MTX_
- Auto_Mtx的使用方法
HANDLE mMtx = CreateMutex(NULL, FALSE, TEXT("mytext1"));
Auto_Mtx<HANDLE> temp(mMtx);