Update WinUtil

master
Kirigaya Kazuto 2017-11-16 22:05:19 +08:00
parent 3323a8bdb5
commit b4799c6b61
2 changed files with 21 additions and 6 deletions

View File

@ -72,14 +72,29 @@ DWORD NamedMutex::getError() const
return errcode;
}
void NamedMutex::wait()
int NamedMutex::wait()
{
WaitForSingleObject(hmtx,INFINITE);
return wait_for(INFINITE);
}
void NamedMutex::wait_for(int ms)
int NamedMutex::wait_for(int ms)
{
WaitForSingleObject(hmtx,ms);
DWORD ret=WaitForSingleObject(hmtx,ms);
if(ret==WAIT_OBJECT_0)
{
return 1;
}
else if(ret==WAIT_TIMEOUT)
{
return 0;
}
else
{
// WAIT_ABANDONED
// WAIT_FAILED
errcode=GetLastError();
return -1;
}
}
void NamedMutex::release()

View File

@ -29,8 +29,8 @@ public:
DWORD getError() const;
/// If the mutex has been occupied by this process, wait() will return immediately.
void wait();
void wait_for(int ms);
int wait();
int wait_for(int ms);
void release();
private:
HANDLE hmtx;