mirror of
https://github.com/Icinga/icinga2.git
synced 2025-07-27 07:34:15 +02:00
parent
a134882567
commit
7d93788650
@ -108,7 +108,7 @@ void Application::Exit(int rc)
|
|||||||
logger->Flush();
|
logger->Flush();
|
||||||
}
|
}
|
||||||
|
|
||||||
Timer::Uninitialize();
|
UninitializeBase();
|
||||||
|
|
||||||
#ifdef _DEBUG
|
#ifdef _DEBUG
|
||||||
exit(rc);
|
exit(rc);
|
||||||
@ -149,6 +149,18 @@ void Application::InitializeBase(void)
|
|||||||
#endif /* _WIN32 */
|
#endif /* _WIN32 */
|
||||||
|
|
||||||
Utility::ExecuteDeferredInitializers();
|
Utility::ExecuteDeferredInitializers();
|
||||||
|
|
||||||
|
/* make sure the thread pool gets initialized */
|
||||||
|
GetTP();
|
||||||
|
|
||||||
|
Timer::Initialize();
|
||||||
|
}
|
||||||
|
|
||||||
|
void Application::UninitializeBase(void)
|
||||||
|
{
|
||||||
|
Timer::Uninitialize();
|
||||||
|
|
||||||
|
GetTP().Stop();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -316,12 +328,7 @@ mainloop:
|
|||||||
DynamicObject::StopObjects();
|
DynamicObject::StopObjects();
|
||||||
Application::GetInstance()->OnShutdown();
|
Application::GetInstance()->OnShutdown();
|
||||||
|
|
||||||
#ifdef _DEBUG
|
UninitializeBase();
|
||||||
GetTP().Stop();
|
|
||||||
m_ShuttingDown = false;
|
|
||||||
|
|
||||||
Timer::Uninitialize();
|
|
||||||
#endif /* _DEBUG */
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Application::OnShutdown(void)
|
void Application::OnShutdown(void)
|
||||||
|
@ -43,6 +43,7 @@ public:
|
|||||||
~Application(void);
|
~Application(void);
|
||||||
|
|
||||||
static void InitializeBase(void);
|
static void InitializeBase(void);
|
||||||
|
static void UninitializeBase(void);
|
||||||
|
|
||||||
static Application::Ptr GetInstance(void);
|
static Application::Ptr GetInstance(void);
|
||||||
|
|
||||||
|
@ -52,9 +52,6 @@ public:
|
|||||||
|
|
||||||
boost::signals2::signal<void(const Timer::Ptr&)> OnTimerExpired;
|
boost::signals2::signal<void(const Timer::Ptr&)> OnTimerExpired;
|
||||||
|
|
||||||
static void Initialize(void);
|
|
||||||
static void Uninitialize(void);
|
|
||||||
|
|
||||||
class Holder {
|
class Holder {
|
||||||
public:
|
public:
|
||||||
Holder(Timer *timer)
|
Holder(Timer *timer)
|
||||||
@ -88,6 +85,11 @@ private:
|
|||||||
void Call();
|
void Call();
|
||||||
|
|
||||||
static void TimerThreadProc(void);
|
static void TimerThreadProc(void);
|
||||||
|
|
||||||
|
static void Initialize(void);
|
||||||
|
static void Uninitialize(void);
|
||||||
|
|
||||||
|
friend class Application;
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -31,12 +31,11 @@ struct InitLibBase
|
|||||||
InitLibBase(void)
|
InitLibBase(void)
|
||||||
{
|
{
|
||||||
Application::InitializeBase();
|
Application::InitializeBase();
|
||||||
Timer::Initialize();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
~InitLibBase(void)
|
~InitLibBase(void)
|
||||||
{
|
{
|
||||||
Timer::Uninitialize();
|
Application::UninitializeBase();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user