summaryrefslogtreecommitdiffstats
path: root/src/DeadlockDetect.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/DeadlockDetect.cpp')
-rw-r--r--src/DeadlockDetect.cpp38
1 files changed, 6 insertions, 32 deletions
diff --git a/src/DeadlockDetect.cpp b/src/DeadlockDetect.cpp
index df14e610b..411d452f6 100644
--- a/src/DeadlockDetect.cpp
+++ b/src/DeadlockDetect.cpp
@@ -56,25 +56,12 @@ bool cDeadlockDetect::Start(int a_IntervalSec)
m_IntervalSec = a_IntervalSec;
// Read the initial world data:
- class cFillIn :
- public cWorldListCallback
- {
- public:
- cFillIn(cDeadlockDetect * a_Detect) :
- m_Detect(a_Detect)
- {
- }
-
- virtual bool Item(cWorld * a_World) override
+ cRoot::Get()->ForEachWorld([=](cWorld & a_World)
{
- m_Detect->SetWorldAge(a_World->GetName(), a_World->GetWorldAge());
+ SetWorldAge(a_World.GetName(), a_World.GetWorldAge());
return false;
}
-
- protected:
- cDeadlockDetect * m_Detect;
- } FillIn(this);
- cRoot::Get()->ForEachWorld(FillIn);
+ );
return super::Start();
}
@@ -115,25 +102,12 @@ void cDeadlockDetect::Execute(void)
while (!m_ShouldTerminate)
{
// Check the world ages:
- class cChecker :
- public cWorldListCallback
- {
- public:
- cChecker(cDeadlockDetect * a_Detect) :
- m_Detect(a_Detect)
- {
- }
-
- protected:
- cDeadlockDetect * m_Detect;
-
- virtual bool Item(cWorld * a_World) override
+ cRoot::Get()->ForEachWorld([=](cWorld & a_World)
{
- m_Detect->CheckWorldAge(a_World->GetName(), a_World->GetWorldAge());
+ CheckWorldAge(a_World.GetName(), a_World.GetWorldAge());
return false;
}
- } Checker(this);
- cRoot::Get()->ForEachWorld(Checker);
+ );
std::this_thread::sleep_for(std::chrono::milliseconds(CYCLE_MILLISECONDS));
} // while (should run)