summaryrefslogtreecommitdiff
path: root/src/threadengine_win32.cpp
diff options
context:
space:
mode:
authorAdam <Adam@anope.org>2010-07-15 22:55:02 -0400
committerAdam <Adam@anope.org>2010-07-15 22:55:02 -0400
commita22f8d3b2de88b9bb6f80f0c2780846ae23ab389 (patch)
treea2fdf570868896a787df8a1169951b0028e68d6b /src/threadengine_win32.cpp
parent43b1e43afb85639485e36d24da351dc0f121be6e (diff)
Moved some files and diretories around, made cmake skip files it knows it can't compile because of missing dependices.
Diffstat (limited to 'src/threadengine_win32.cpp')
-rw-r--r--src/threadengine_win32.cpp106
1 files changed, 0 insertions, 106 deletions
diff --git a/src/threadengine_win32.cpp b/src/threadengine_win32.cpp
deleted file mode 100644
index 54db9529a..000000000
--- a/src/threadengine_win32.cpp
+++ /dev/null
@@ -1,106 +0,0 @@
-#include "services.h"
-
-/** Entry point for the thread
- * @param paramter A Thread* cast to a void*
- */
-static DWORD WINAPI entry_point(void *parameter)
-{
- Thread *thread = static_cast<Thread *>(parameter);
- thread->Run();
- if (!thread->GetExitState())
- thread->Join();
- delete thread;
- return 0;
-}
-
-/** Threadengines constructor
- */
-ThreadEngine::ThreadEngine()
-{
-}
-
-/** Threadengines destructor
- */
-ThreadEngine::~ThreadEngine()
-{
-}
-
-/** Join to the thread, sets the exit state to true
- */
-void Thread::Join()
-{
- SetExitState();
- WaitForSingleObject(Handle, INFINITE);
-}
-
-/** Start a new thread
- * @param thread A pointer to a newley allocated thread
- */
-void ThreadEngine::Start(Thread *thread)
-{
- thread->Handle = CreateThread(NULL, 0, entry_point, thread, 0, NULL);
-
- if (!thread->Handle)
- {
- delete thread;
- throw CoreException("Unable to create thread: " + std::string(dlerror()));
- }
-}
-
-/** Constructor
- */
-Mutex::Mutex()
-{
- InitializeCriticalSection(&mutex);
-}
-
-/** Destructor
- */
-Mutex::~Mutex()
-{
- DeleteCriticalSection(&mutex);
-}
-
-/** Attempt to lock the mutex, will hang until a lock can be achieved
- */
-void Mutex::Lock()
-{
- EnterCriticalSection(&mutex);
-}
-
-/** Unlock the mutex, it must be locked first
- */
-void Mutex::Unlock()
-{
- LeaveCriticalSection(&mutex);
-}
-
-/** Constructor
- */
-Condition::Condition() : Mutex()
-{
- cond = CreateEvent(NULL, false, false, NULL);
-}
-
-/** Destructor
- */
-Condition::~Condition()
-{
- CloseHandle(cond);
-}
-
-/** Called to wakeup the waiter
- */
-void Condition::Wakeup()
-{
- PulseEvent(cond);
-}
-
-/** Called to wait for a Wakeup() call
- */
-void Condition::Wait()
-{
- LeaveCriticalSection(&mutex);
- WaitForSingleObject(cond, INFINITE);
- EnterCriticalSection(&mutex);
-}