1 #pragma once
2 
3 namespace MT
4 {
5 	class ThreadBase
6 	{
7 	protected:
8 		void * funcData;
9 		TThreadEntryPoint func;
10 	public:
11 
12 		MT_NOCOPYABLE(ThreadBase);
13 
14 		ThreadBase()
15 			: funcData(nullptr)
16 			, func(nullptr)
17 		{
18 		}
19 
20 		static void SpinSleep(uint32 milliseconds)
21 		{
22 			int64 desiredTime = GetTimeMilliSeconds() + milliseconds;
23 			while(GetTimeMilliSeconds() <= desiredTime) {}
24 		}
25 	};
26 }
27 
28 
29