mirror of
https://github.com/Icinga/icinga2.git
synced 2025-07-29 00:24:23 +02:00
parent
4c7e2994a7
commit
f3bb628d6e
@ -79,6 +79,9 @@ void WorkQueue::Enqueue(const boost::function<void (void)>& function, WorkQueueP
|
|||||||
boost::mutex::scoped_lock lock(m_Mutex);
|
boost::mutex::scoped_lock lock(m_Mutex);
|
||||||
|
|
||||||
if (!m_Spawned) {
|
if (!m_Spawned) {
|
||||||
|
Log(LogNotice, "WorkQueue")
|
||||||
|
<< "Spawning WorkQueue threads for '" << m_Name << "'";
|
||||||
|
|
||||||
for (int i = 0; i < m_ThreadCount; i++) {
|
for (int i = 0; i < m_ThreadCount; i++) {
|
||||||
m_Threads.create_thread(boost::bind(&WorkQueue::WorkerThreadProc, this));
|
m_Threads.create_thread(boost::bind(&WorkQueue::WorkerThreadProc, this));
|
||||||
}
|
}
|
||||||
@ -116,6 +119,9 @@ void WorkQueue::Join(bool stop)
|
|||||||
|
|
||||||
m_Threads.join_all();
|
m_Threads.join_all();
|
||||||
m_Spawned = false;
|
m_Spawned = false;
|
||||||
|
|
||||||
|
Log(LogNotice, "WorkQueue")
|
||||||
|
<< "Stopped WorkQueue threads for '" << m_Name << "'";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -282,6 +282,7 @@ int DaemonCommand::Run(const po::variables_map& vm, const std::vector<std::strin
|
|||||||
|
|
||||||
{
|
{
|
||||||
WorkQueue upq(25000, Application::GetConcurrency());
|
WorkQueue upq(25000, Application::GetConcurrency());
|
||||||
|
upq.SetName("DaemonCommand::Run");
|
||||||
|
|
||||||
// activate config only after daemonization: it starts threads and that is not compatible with fork()
|
// activate config only after daemonization: it starts threads and that is not compatible with fork()
|
||||||
if (!ConfigItem::ActivateItems(upq, newItems)) {
|
if (!ConfigItem::ActivateItems(upq, newItems)) {
|
||||||
|
@ -168,6 +168,7 @@ bool DaemonUtility::LoadConfigFiles(const std::vector<std::string>& configs,
|
|||||||
}
|
}
|
||||||
|
|
||||||
WorkQueue upq(25000, Application::GetConcurrency());
|
WorkQueue upq(25000, Application::GetConcurrency());
|
||||||
|
upq.SetName("DaemonUtility::LoadConfigFiles");
|
||||||
bool result = ConfigItem::CommitItems(ascope.GetContext(), upq, newItems);
|
bool result = ConfigItem::CommitItems(ascope.GetContext(), upq, newItems);
|
||||||
|
|
||||||
if (!result) {
|
if (!result) {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user