diff options
| author | hrydgard <hrydgard@gmail.com> | 2009-02-20 22:04:52 +0000 |
|---|---|---|
| committer | hrydgard <hrydgard@gmail.com> | 2009-02-20 22:04:52 +0000 |
| commit | 6cd34b318fc46620ea85991dd1e03ea390960da3 (patch) | |
| tree | 0a20c064660b03e8d440a517daa76c8707b7f514 /Source/Core/Common/Src/Thread.cpp | |
| parent | f992dae50ddbd7c20d63e6d48d5051fc1d6b392b (diff) | |
The Mega Change Of Doom - or, fixing Stop. Almost. At least it's better than before. However, the OpenGL plugin seems to lose textures a lot between game restarts :P I think the GL plugin needs to do a lot more cleanup.
This change also includes tons of minor code formatting cleanup. Yeah, should've separated it ... sorry :(
Kills the old CPUCompare support. I'll resurrect it if I need it again, right now it mostly clutters the code.
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@2321 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core/Common/Src/Thread.cpp')
| -rw-r--r-- | Source/Core/Common/Src/Thread.cpp | 26 |
1 files changed, 10 insertions, 16 deletions
diff --git a/Source/Core/Common/Src/Thread.cpp b/Source/Core/Common/Src/Thread.cpp index 28f59daecb..efc4815cb2 100644 --- a/Source/Core/Common/Src/Thread.cpp +++ b/Source/Core/Common/Src/Thread.cpp @@ -22,6 +22,12 @@ namespace Common { #ifdef _WIN32 + +void InitThreading() +{ + // Nothing to do in Win32 build. +} + CriticalSection::CriticalSection(int spincount) { if (spincount) @@ -34,25 +40,21 @@ CriticalSection::CriticalSection(int spincount) } } - CriticalSection::~CriticalSection() { DeleteCriticalSection(§ion); } - void CriticalSection::Enter() { EnterCriticalSection(§ion); } - bool CriticalSection::TryEnter() { return TryEnterCriticalSection(§ion) ? true : false; } - void CriticalSection::Leave() { LeaveCriticalSection(§ion); @@ -71,13 +73,11 @@ Thread::Thread(ThreadFunc function, void* arg) &m_threadId); } - Thread::~Thread() { WaitForDeath(); } - void Thread::WaitForDeath() { if (m_hThread) @@ -88,13 +88,11 @@ void Thread::WaitForDeath() } } - void Thread::SetAffinity(int mask) { SetThreadAffinityMask(m_hThread, mask); } - void Thread::SetCurrentThreadAffinity(int mask) { SetThreadAffinityMask(GetCurrentThread(), mask); @@ -106,32 +104,27 @@ Event::Event() m_hEvent = 0; } - void Event::Init() { m_hEvent = CreateEvent(NULL, FALSE, FALSE, NULL); } - void Event::Shutdown() { CloseHandle(m_hEvent); m_hEvent = 0; } - void Event::Set() { SetEvent(m_hEvent); } - void Event::Wait() { WaitForSingleObject(m_hEvent, INFINITE); } - void SleepCurrentThread(int ms) { Sleep(ms); @@ -304,12 +297,13 @@ void Thread::SetCurrentThreadAffinity(int mask) void InitThreading() { static int thread_init_done = 0; - if (thread_init_done) return; - thread_init_done++; + if (thread_init_done) + return; if (pthread_key_create(&threadname_key, NULL/*free*/) != 0) perror("Unable to create thread name key: "); - + + thread_init_done++; } void SleepCurrentThread(int ms) |
