From dd00a36be3821a644fa1ac34aa2668873647c1a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9F=D0=B5=D0=BB=D0=B8=D0=BF=D0=B5=D0=BD=D0=BA=D0=BE=20?= =?UTF-8?q?=D0=98=D0=B2=D0=B0=D0=BD?= Date: Tue, 16 Oct 2018 06:59:15 +0000 Subject: [PATCH] git-svn-id: svn://db.shs.com.ru/pip@646 12ceb7fc-bf1f-11e4-8940-5bc7170c53b5 --- src_main/io_utils/piconnection.cpp | 12 +++++++----- src_main/io_utils/piconnection.h | 1 + 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src_main/io_utils/piconnection.cpp b/src_main/io_utils/piconnection.cpp index 55b1c63a..3d1bc27a 100644 --- a/src_main/io_utils/piconnection.cpp +++ b/src_main/io_utils/piconnection.cpp @@ -939,6 +939,10 @@ PIConnection::DevicePool::DevicePool(): PIThread(false, 10) { } +PIConnection::DevicePool::~DevicePool() { +} + + void PIConnection::DevicePool::init() { if (!isRunning()) start(10); @@ -1088,14 +1092,12 @@ PIVector PIConnection::DevicePool::boundedDevices(const PIConnect PIConnection::DevicePool::DeviceData::~DeviceData() { - if (rthread != 0) { - rthread->stop(); - if (!rthread->waitForFinish(1000)) - rthread->terminate(); + if (rthread) { + rthread->terminate(); delete rthread; rthread = 0; } - if (dev != 0) { + if (dev) { dev->close(); delete dev; dev = 0; diff --git a/src_main/io_utils/piconnection.h b/src_main/io_utils/piconnection.h index d43c8ecb..7f28d6dd 100644 --- a/src_main/io_utils/piconnection.h +++ b/src_main/io_utils/piconnection.h @@ -290,6 +290,7 @@ public: struct DeviceData; public: DevicePool(); + ~DevicePool(); void init(); PIIODevice * addDevice(PIConnection * parent, const PIString & fp, PIIODevice::DeviceMode mode = PIIODevice::ReadWrite, bool start = true);