summaryrefslogtreecommitdiffstats
path: root/src/DeadlockDetect.cpp
diff options
context:
space:
mode:
authorpeterbell10 <peterbell10@live.co.uk>2017-09-01 13:04:50 +0200
committerMattes D <github@xoft.cz>2017-09-01 13:04:50 +0200
commit496c337cdfa593654018c171f6a74c28272265b5 (patch)
treefab48316d8fd6de97500ca1b8c8c5792eb578acc /src/DeadlockDetect.cpp
parentUpdate Core plugin (diff)
downloadcuberite-496c337cdfa593654018c171f6a74c28272265b5.tar
cuberite-496c337cdfa593654018c171f6a74c28272265b5.tar.gz
cuberite-496c337cdfa593654018c171f6a74c28272265b5.tar.bz2
cuberite-496c337cdfa593654018c171f6a74c28272265b5.tar.lz
cuberite-496c337cdfa593654018c171f6a74c28272265b5.tar.xz
cuberite-496c337cdfa593654018c171f6a74c28272265b5.tar.zst
cuberite-496c337cdfa593654018c171f6a74c28272265b5.zip
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)