void SqlDelayThread::run() { #ifndef DO_POSTGRESQL mysql_thread_init(); #endif SqlAsyncTask * s = NULL; ACE_Time_Value _time(2); while (m_running) { // if the running state gets turned off while sleeping // empty the queue before exiting s = dynamic_cast<SqlAsyncTask*> (m_sqlQueue.dequeue()); if (s) { s->call(); delete s; } } #ifndef DO_POSTGRESQL mysql_thread_end(); #endif }
void SqlDelayThread::run() { #ifndef DO_POSTGRESQL mysql_thread_init(); #endif //lets wait for next async task no more than 2 secs... ACE_Time_Value _time(2); while (m_running) { // if the running state gets turned off while sleeping // empty the queue before exiting SqlAsyncTask * s = dynamic_cast<SqlAsyncTask*> (m_sqlQueue.dequeue(/*&_time*/)); if(s) { s->call(); delete s; } } #ifndef DO_POSTGRESQL mysql_thread_end(); #endif }