diff --git a/src_main/io_utils/pidiagnostics.cpp b/src_main/io_utils/pidiagnostics.cpp index c20b9177..9f01f85c 100644 --- a/src_main/io_utils/pidiagnostics.cpp +++ b/src_main/io_utils/pidiagnostics.cpp @@ -58,7 +58,7 @@ PIDiagnostics::State::State() { -PIDiagnostics::PIDiagnostics(bool start_): PITimer(PITimer::Pool) { +PIDiagnostics::PIDiagnostics(bool start_): PITimer(/*PITimer::Pool*/) { disconn_ = 0.; setInterval(100); reset(); diff --git a/src_main/thread/pitimer.cpp b/src_main/thread/pitimer.cpp index 2c70f8b4..101b6e26 100755 --- a/src_main/thread/pitimer.cpp +++ b/src_main/thread/pitimer.cpp @@ -370,14 +370,16 @@ _PITimerImp_Pool::Pool::Pool(): PIThread() { needLockRun(true); #ifndef FREERTOS timers.reserve(64); -#endif + start(PIP_MIN_MSLEEP*5); +#else start(PIP_MIN_MSLEEP); +#endif } _PITimerImp_Pool::Pool::~Pool() { stop(); - if (!waitForFinish(100)) + if (!waitForFinish(500)) terminate(); unlock(); timers.clear();