diff options
author | LogicParrot <LogicParrot@users.noreply.github.com> | 2017-09-01 21:12:44 +0200 |
---|---|---|
committer | LogicParrot <LogicParrot@users.noreply.github.com> | 2017-09-01 21:12:44 +0200 |
commit | 6e3e7552e67dfc0254c3e99bcd32fea02f10d062 (patch) | |
tree | 84bfd40d2c2693cab44a47d4902aa601d8a715e6 /src/DeadlockDetect.cpp | |
parent | d (diff) | |
parent | SetSwimState now takes into account head height (diff) | |
download | cuberite-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.cpp | 38 |
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) |