From dba32d54d1668033356a2ad505c239411d660821 Mon Sep 17 00:00:00 2001 From: Nan Zhu Date: Tue, 16 Jul 2019 12:41:39 -0700 Subject: [PATCH] shutdown for multiple times (#99) --- src/engine.cc | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/engine.cc b/src/engine.cc index d2b94e1d1..d87b68d6a 100644 --- a/src/engine.cc +++ b/src/engine.cc @@ -57,14 +57,16 @@ bool Init(int argc, char *argv[]) { /*! \brief finalize syncrhonization module */ bool Finalize() { ThreadLocalEntry* e = EngineThreadLocal::Get(); - utils::Check(e->engine.get() != nullptr, - "rabit::Finalize engine is not initialized or already been finalized."); - if (e->engine->Shutdown()) { - e->engine.reset(nullptr); - e->initialized = false; - return true; + if (e->engine.get() != nullptr) { + if (e->engine->Shutdown()) { + e->engine.reset(nullptr); + e->initialized = false; + return true; + } else { + return false; + } } else { - return false; + return true; } }