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