summaryrefslogtreecommitdiffstats
path: root/src/DeadlockDetect.cpp
diff options
context:
space:
mode:
authorLogicParrot <LogicParrot@users.noreply.github.com>2017-09-01 21:12:44 +0200
committerLogicParrot <LogicParrot@users.noreply.github.com>2017-09-01 21:12:44 +0200
commit6e3e7552e67dfc0254c3e99bcd32fea02f10d062 (patch)
tree84bfd40d2c2693cab44a47d4902aa601d8a715e6 /src/DeadlockDetect.cpp
parentd (diff)
parentSetSwimState now takes into account head height (diff)
downloadcuberite-6e3e7552e67dfc0254c3e99bcd32fea02f10d062.tar
cuberite-6e3e7552e67dfc0254c3e99bcd32fea02f10d062.tar.gz
cuberite-6e3e7552e67dfc0254c3e99bcd32fea02f10d062.tar.bz2
cuberite-6e3e7552e67dfc0254c3e99bcd32fea02f10d062.tar.lz
cuberite-6e3e7552e67dfc0254c3e99bcd32fea02f10d062.tar.xz
cuberite-6e3e7552e67dfc0254c3e99bcd32fea02f10d062.tar.zst
cuberite-6e3e7552e67dfc0254c3e99bcd32fea02f10d062.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)