diff options
author | Serhii Niukalov (GitHub) <36993782+SNiukalov@users.noreply.github.com> | 2020-08-21 18:47:06 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-08-21 11:47:06 -0400 |
commit | b476821b44a3bb3333a17202763daca808a44f70 (patch) | |
tree | dcc77c046b6e2bb9268fef0286e0db95bd612dac /src/components/connection_handler | |
parent | 2bfbdcea6c70219c66eb422fe98bdeda559ff335 (diff) | |
download | sdl_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.cc | 4 |
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_); |