summaryrefslogtreecommitdiff
path: root/src/components/connection_handler
diff options
context:
space:
mode:
authorSerhii Niukalov (GitHub) <36993782+SNiukalov@users.noreply.github.com>2020-08-21 18:47:06 +0300
committerGitHub <noreply@github.com>2020-08-21 11:47:06 -0400
commitb476821b44a3bb3333a17202763daca808a44f70 (patch)
treedcc77c046b6e2bb9268fef0286e0db95bd612dac /src/components/connection_handler
parent2bfbdcea6c70219c66eb422fe98bdeda559ff335 (diff)
downloadsdl_core-b476821b44a3bb3333a17202763daca808a44f70.tar.gz
Fix avoid race conditions (#3471)
* Introduced enums instead multiple bool flags Update threadFunc logic Update Start logic Update Stop logic Update Join logic * Update of the affected code * UTs update Co-authored-by: sniukalov <sniukaov@luxoft.com>
Diffstat (limited to 'src/components/connection_handler')
-rw-r--r--src/components/connection_handler/src/connection.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/components/connection_handler/src/connection.cc b/src/components/connection_handler/src/connection.cc
index 304be9ddb0..9dcf2540a4 100644
--- a/src/components/connection_handler/src/connection.cc
+++ b/src/components/connection_handler/src/connection.cc
@@ -89,12 +89,12 @@ Connection::Connection(ConnectionHandle connection_handle,
heartbeat_monitor_ = new HeartBeatMonitor(heartbeat_timeout_, this);
heart_beat_monitor_thread_ =
threads::CreateThread("HeartBeatMonitor", heartbeat_monitor_);
- heart_beat_monitor_thread_->start();
+ heart_beat_monitor_thread_->Start();
}
Connection::~Connection() {
LOG4CXX_AUTO_TRACE(logger_);
- heart_beat_monitor_thread_->join();
+ heart_beat_monitor_thread_->Stop(threads::Thread::kThreadSoftStop);
delete heartbeat_monitor_;
threads::DeleteThread(heart_beat_monitor_thread_);