+bool CCECParser::Close(int iTimeoutMs /* = 2000 */)
+{
+ m_bRunning = false;
+ bool bExit(false);
+ if (iTimeoutMs > 0)
+ {
+ bExit = m_exitCondition.Wait(&m_mutex, iTimeoutMs);
+ m_mutex.Unlock();
+ }
+ else
+ {
+ pthread_join(m_thread, NULL);
+ bExit = true;
+ }
+
+ return bExit;
+}
+