Fix destructor collapsion when exit

Signed-off-by: zhangyukun <zhangyukun8@huawei.com>
Change-Id: I9d1e7d1b23e60fa1b780b9a19fe8da0330b17573
This commit is contained in:
zhangyukun
2021-12-28 17:13:22 +08:00
parent 7216add2b4
commit 2a0c172d7e
2 changed files with 11 additions and 2 deletions
+5 -1
View File
@@ -29,7 +29,11 @@ void Platform::Initialize(int threadNum)
void Platform::Destroy()
{
os::memory::LockHolder lock(mutex_);
if (--isInitialized_ <= 0) {
if (isInitialized_ <= 0) {
return;
}
isInitialized_--;
if (isInitialized_ == 0) {
runner_->TerminateThread();
} else {
runner_->TerminateTask();
+6 -1
View File
@@ -31,7 +31,12 @@ public:
}
Platform() = default;
~Platform() = default;
~Platform()
{
os::memory::LockHolder lock(mutex_);
runner_->TerminateThread();
isInitialized_ = 0;
}
NO_COPY_SEMANTIC(Platform);
NO_MOVE_SEMANTIC(Platform);