Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

26 lines
578 B

#pragma once
#ifdef __ATLCOM_H__ //--- Only enable these if ATL is being used
class CSPAutoObjectLock
{
protected:
CComObjectRootEx<CComMultiThreadModel>* m_pObject;
public:
CSPAutoObjectLock(CComObjectRootEx<CComMultiThreadModel> * const pobject)
{
m_pObject = pobject;
m_pObject->Lock();
};
~CSPAutoObjectLock() {
m_pObject->Unlock();
};
};
#define SPAUTO_OBJ_LOCK CSPAutoObjectLock lck(this)
#define SPAUTO_OBJ_LOCK_OBJECT( t ) CSPAutoObjectLock lck##__LINE__(t)
#endif // __ATLCOM_H__