Index: src/libchcore/TWorkerThreadController.h =================================================================== diff -u -N -re96806b7f8ff7ca7e9f4afbea603e6351a3dc3e3 -r89f857792bba8752de98ddd477949e45cef5ba5a --- src/libchcore/TWorkerThreadController.h (.../TWorkerThreadController.h) (revision e96806b7f8ff7ca7e9f4afbea603e6351a3dc3e3) +++ src/libchcore/TWorkerThreadController.h (.../TWorkerThreadController.h) (revision 89f857792bba8752de98ddd477949e45cef5ba5a) @@ -39,20 +39,20 @@ // methods to be used outside of the thread being controlled void StartThread(PTHREAD_START_ROUTINE pThreadFunction, PVOID pThreadParam, int iPriority = THREAD_PRIORITY_NORMAL); void SignalThreadToStop(); - void WaitForThreadToExit(); + void WaitForThreadToExit(DWORD dwMiliseconds = INFINITE); void StopThread(); void ChangePriority(int iPriority); // methods to be used only inside the thread being controlled bool KillRequested(DWORD dwWaitForSignal = 0); - HANDLE GetKillThreadHandle() const; + protected: void RemoveZombieData(boost::upgrade_lock& rUpgradeLock); void SignalThreadToStop(boost::upgrade_lock& rUpgradeLock); - void WaitForThreadToExit(boost::upgrade_lock& rUpgradeLock); + void WaitForThreadToExit(boost::upgrade_lock& rUpgradeLock, DWORD dwMiliseconds = INFINITE); private: TWorkerThreadController(const TWorkerThreadController&);