mirror of
https://github.com/isledecomp/isle.git
synced 2024-11-29 11:06:05 -05:00
use LF line ending
This commit is contained in:
parent
fba95658b5
commit
0bfb88837e
2 changed files with 92 additions and 92 deletions
|
@ -1,73 +1,73 @@
|
||||||
#include "mxcriticalsection.h"
|
#include "mxcriticalsection.h"
|
||||||
|
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
|
|
||||||
int g_useMutex = 0;
|
int g_useMutex = 0;
|
||||||
|
|
||||||
MxCriticalSection::MxCriticalSection()
|
MxCriticalSection::MxCriticalSection()
|
||||||
{
|
{
|
||||||
HANDLE mutex;
|
HANDLE mutex;
|
||||||
|
|
||||||
if (g_useMutex != 0)
|
if (g_useMutex != 0)
|
||||||
{
|
{
|
||||||
mutex = CreateMutexA(NULL, FALSE, NULL);
|
mutex = CreateMutexA(NULL, FALSE, NULL);
|
||||||
this->m_mutex = mutex;
|
this->m_mutex = mutex;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
InitializeCriticalSection(&this->m_criticalSection);
|
InitializeCriticalSection(&this->m_criticalSection);
|
||||||
this->m_mutex = NULL;
|
this->m_mutex = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
MxCriticalSection::~MxCriticalSection()
|
MxCriticalSection::~MxCriticalSection()
|
||||||
{
|
{
|
||||||
if (this->m_mutex != NULL)
|
if (this->m_mutex != NULL)
|
||||||
{
|
{
|
||||||
CloseHandle(this->m_mutex);
|
CloseHandle(this->m_mutex);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
DeleteCriticalSection(&this->m_criticalSection);
|
DeleteCriticalSection(&this->m_criticalSection);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MxCriticalSection::SetDoMutex()
|
void MxCriticalSection::SetDoMutex()
|
||||||
{
|
{
|
||||||
g_useMutex = 1;
|
g_useMutex = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void MxCriticalSection::Enter()
|
void MxCriticalSection::Enter()
|
||||||
{
|
{
|
||||||
DWORD result;
|
DWORD result;
|
||||||
FILE *file;
|
FILE *file;
|
||||||
|
|
||||||
if (this->m_mutex != NULL)
|
if (this->m_mutex != NULL)
|
||||||
{
|
{
|
||||||
result = WaitForSingleObject(this->m_mutex, 5000);
|
result = WaitForSingleObject(this->m_mutex, 5000);
|
||||||
if (result == WAIT_FAILED)
|
if (result == WAIT_FAILED)
|
||||||
{
|
{
|
||||||
file = fopen("C:\\DEADLOCK.TXT", "a");
|
file = fopen("C:\\DEADLOCK.TXT", "a");
|
||||||
if (file != NULL)
|
if (file != NULL)
|
||||||
{
|
{
|
||||||
fprintf(file, "mutex timeout occurred!\n");
|
fprintf(file, "mutex timeout occurred!\n");
|
||||||
fclose(file);
|
fclose(file);
|
||||||
}
|
}
|
||||||
|
|
||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
EnterCriticalSection(&this->m_criticalSection);
|
EnterCriticalSection(&this->m_criticalSection);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void MxCriticalSection::Leave()
|
void MxCriticalSection::Leave()
|
||||||
{
|
{
|
||||||
if (this->m_mutex != NULL)
|
if (this->m_mutex != NULL)
|
||||||
{
|
{
|
||||||
ReleaseMutex(this->m_mutex);
|
ReleaseMutex(this->m_mutex);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
LeaveCriticalSection(&this->m_criticalSection);
|
LeaveCriticalSection(&this->m_criticalSection);
|
||||||
}
|
}
|
|
@ -1,20 +1,20 @@
|
||||||
#ifndef MXCRITICALSECTION_H
|
#ifndef MXCRITICALSECTION_H
|
||||||
#define MXCRITICALSECTION_H
|
#define MXCRITICALSECTION_H
|
||||||
|
|
||||||
#include <Windows.h>
|
#include <Windows.h>
|
||||||
|
|
||||||
class MxCriticalSection
|
class MxCriticalSection
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
__declspec(dllexport) MxCriticalSection();
|
__declspec(dllexport) MxCriticalSection();
|
||||||
__declspec(dllexport) ~MxCriticalSection();
|
__declspec(dllexport) ~MxCriticalSection();
|
||||||
__declspec(dllexport) static void SetDoMutex();
|
__declspec(dllexport) static void SetDoMutex();
|
||||||
void Enter();
|
void Enter();
|
||||||
void Leave();
|
void Leave();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
CRITICAL_SECTION m_criticalSection;
|
CRITICAL_SECTION m_criticalSection;
|
||||||
HANDLE m_mutex;
|
HANDLE m_mutex;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // MXCRITICALSECTION_H
|
#endif // MXCRITICALSECTION_H
|
||||||
|
|
Loading…
Reference in a new issue