the destructor automatically calls Unlock() git-svn-id: svn://ttmath.org/publicrep/winix/trunk@886 e52654a7-88a9-db11-a3e9-0013d4bc506e
50 lines
464 B
C++
Executable File
50 lines
464 B
C++
Executable File
/*
|
|
* This file is a part of Winix
|
|
* and is not publicly distributed
|
|
*
|
|
* Copyright (c) 2012, Tomasz Sowa
|
|
* All rights reserved.
|
|
*
|
|
*/
|
|
|
|
#include "lock.h"
|
|
|
|
|
|
|
|
Lock::Lock()
|
|
{
|
|
synchro = 0;
|
|
}
|
|
|
|
|
|
Lock::Lock(Synchro * synchro_)
|
|
{
|
|
synchro = synchro_;
|
|
synchro->Lock();
|
|
}
|
|
|
|
|
|
Lock::Lock(Synchro & synchro_)
|
|
{
|
|
synchro = &synchro_;
|
|
synchro->Lock();
|
|
}
|
|
|
|
|
|
Lock::~Lock()
|
|
{
|
|
Unlock();
|
|
}
|
|
|
|
|
|
void Lock::Unlock()
|
|
{
|
|
if( synchro )
|
|
{
|
|
synchro->Unlock();
|
|
synchro = 0;
|
|
}
|
|
}
|
|
|
|
|