summaryrefslogtreecommitdiffstats
path: root/source/OSSupport/Thread.h
diff options
context:
space:
mode:
authormadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2012-09-23 23:23:33 +0200
committermadmaxoft@gmail.com <madmaxoft@gmail.com@0a769ca7-a7f5-676a-18bf-c427514a06d6>2012-09-23 23:23:33 +0200
commit7abb5f7604bb9a0a716e89f3b27e330b016a38b9 (patch)
tree7ccaea302b953c239a0d60548b6f7bcaf72e6527 /source/OSSupport/Thread.h
parentSource files cleanup: Removed unused cBlockToPickup (diff)
downloadcuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.tar
cuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.tar.gz
cuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.tar.bz2
cuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.tar.lz
cuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.tar.xz
cuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.tar.zst
cuberite-7abb5f7604bb9a0a716e89f3b27e330b016a38b9.zip
Diffstat (limited to 'source/OSSupport/Thread.h')
-rw-r--r--source/OSSupport/Thread.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/source/OSSupport/Thread.h b/source/OSSupport/Thread.h
new file mode 100644
index 000000000..3c9316424
--- /dev/null
+++ b/source/OSSupport/Thread.h
@@ -0,0 +1,26 @@
+#pragma once
+
+class cThread
+{
+public:
+ typedef void (ThreadFunc)(void*);
+ cThread( ThreadFunc a_ThreadFunction, void* a_Param, const char* a_ThreadName = 0 );
+ ~cThread();
+
+ void Start( bool a_bWaitOnDelete = true );
+ void WaitForThread();
+private:
+ ThreadFunc* m_ThreadFunction;
+
+#ifdef _WIN32
+ static unsigned long MyThread(void* a_Param );
+#else
+ static void *MyThread( void *lpParam );
+#endif
+
+ void* m_Param;
+ cEvent* m_Event;
+ cEvent* m_StopEvent;
+
+ AString m_ThreadName;
+}; \ No newline at end of file