#pragma once #include "Communication.h" #include #include using namespace std; class Thread { private: HANDLE _hThread; bool _terminate; int _ID; static unsigned __stdcall threadFunc(void *param) { //cout <<"Static Thread function says : Thread is about to start ... "<run(); return 1; // Return error } public: Thread(int id=0) : _hThread(0),_ID(id), _terminate(false) {} virtual ~Thread() {} void terminate() { _terminate = true; } bool isTerminated() const { return _terminate; } HANDLE start(); HANDLE getThreadHandle() const {return _hThread;} void waitForTermination(); void Suspend(HANDLE hThread) {if (SuspendThread(hThread) > 0 ) cout <<"This thread is suspended ..."<