+#if wxUSE_THREADS
+ m_end_requester.Lock();
+ if (m_invalid_requester) {
+ m_end_requester.Unlock();
+ if (m_thread_requester) {
+ m_thread_requester->Delete();
+ delete m_thread_requester;
+ m_thread_requester = NULL;
+ }
+ m_invalid_requester = TRUE;
+ return;
+ }
+ m_end_requester.Unlock();
+