void wxThreadInternal::Resume() { wxCHECK_RET( m_state == STATE_PAUSED, wxT("can't resume thread which is not suspended.") ); // the thread might be not actually paused yet - if there were no call to // TestDestroy() since the last call to Pause() for example if ( IsReallyPaused() ) { wxLogTrace(TRACE_THREADS, _T("Waking up thread %ld"), THR_ID(this)); // wake up Pause() m_semSuspend.Post(); // reset the flag SetReallyPaused(false); } else { wxLogTrace(TRACE_THREADS, _T("Thread %ld is not yet really paused"), THR_ID(this)); } SetState(STATE_RUNNING); }
void wxThreadInternal::Resume() { wxCHECK_RET( m_state == STATE_PAUSED, wxT("can't resume thread which is not suspended.") ); // the thread might be not actually paused yet - if there were no call to // TestDestroy() since the last call to Pause() for example if ( IsReallyPaused() ) { // wake up Pause() m_semSuspend.Post(); // reset the flag SetReallyPaused( false ); } SetState( STATE_RUNNING ); }