Inheritance diagram for MyDetachedThread:
Definition at line 219 of file console_socket.cpp.
MyDetachedThread::MyDetachedThread | ( | size_t | n, | |
wxChar | ch | |||
) | [inline] |
Definition at line 222 of file console_socket.cpp.
References m_cancelled, m_ch, and m_n.
00223 { 00224 m_n = n; 00225 m_ch = ch; 00226 m_cancelled = false; 00227 00228 Create(); 00229 }
wxThread::ExitCode MyDetachedThread::Entry | ( | ) | [virtual] |
Definition at line 244 of file console_socket.cpp.
References gs_counter, gs_critsect, m_cancelled, m_ch, and m_n.
00245 { 00246 { 00247 wxCriticalSectionLocker lock(gs_critsect); 00248 if ( gs_counter == (size_t)-1 ) 00249 gs_counter = 1; 00250 else 00251 gs_counter++; 00252 } 00253 00254 for ( size_t n = 0; n < m_n; n++ ) 00255 { 00256 if ( TestDestroy() ) 00257 { 00258 m_cancelled = true; 00259 00260 break; 00261 } 00262 00263 wxPutchar(m_ch); 00264 fflush(stdout); 00265 00266 wxThread::Sleep(100); 00267 } 00268 00269 return 0; 00270 }
void MyDetachedThread::OnExit | ( | ) | [virtual] |
Definition at line 272 of file console_socket.cpp.
References gs_cond, gs_counter, gs_critsect, and m_cancelled.
00273 { 00274 wxLogTrace(_T("thread"), _T("Thread %ld is in OnExit"), GetId()); 00275 00276 wxCriticalSectionLocker lock(gs_critsect); 00277 if ( !--gs_counter && !m_cancelled ) 00278 gs_cond.Post(); 00279 }
bool MyDetachedThread::m_cancelled [private] |
Definition at line 241 of file console_socket.cpp.
Referenced by Entry(), MyDetachedThread(), and OnExit().
wxChar MyDetachedThread::m_ch [private] |
size_t MyDetachedThread::m_n [private] |