aboutsummaryrefslogtreecommitdiff
path: root/src/server/worldserver/Main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/worldserver/Main.cpp')
-rw-r--r--src/server/worldserver/Main.cpp34
1 files changed, 17 insertions, 17 deletions
diff --git a/src/server/worldserver/Main.cpp b/src/server/worldserver/Main.cpp
index 70426698405..63145380745 100644
--- a/src/server/worldserver/Main.cpp
+++ b/src/server/worldserver/Main.cpp
@@ -93,26 +93,26 @@ int m_ServiceStatus = -1;
class FreezeDetector
{
- public:
+public:
FreezeDetector(Trinity::Asio::IoContext& ioContext, uint32 maxCoreStuckTime)
: _timer(ioContext), _worldLoopCounter(0), _lastChangeMsTime(getMSTime()), _maxCoreStuckTimeInMs(maxCoreStuckTime) { }
- static void Start(std::shared_ptr<FreezeDetector> const& freezeDetector)
+ static void Start(std::shared_ptr<FreezeDetector> const& freezeDetector)
+ {
+ freezeDetector->_timer.expires_after(5s);
+ freezeDetector->_timer.async_wait([freezeDetectorRef = std::weak_ptr(freezeDetector)](boost::system::error_code const& error) mutable
{
- freezeDetector->_timer.expires_from_now(boost::posix_time::seconds(5));
- freezeDetector->_timer.async_wait([freezeDetectorRef = std::weak_ptr<FreezeDetector>(freezeDetector)](boost::system::error_code const& error)
- {
- return Handler(freezeDetectorRef, error);
- });
- }
+ Handler(std::move(freezeDetectorRef), error);
+ });
+ }
- static void Handler(std::weak_ptr<FreezeDetector> freezeDetectorRef, boost::system::error_code const& error);
+ static void Handler(std::weak_ptr<FreezeDetector> freezeDetectorRef, boost::system::error_code const& error);
- private:
- Trinity::Asio::DeadlineTimer _timer;
- uint32 _worldLoopCounter;
- uint32 _lastChangeMsTime;
- uint32 _maxCoreStuckTimeInMs;
+private:
+ Trinity::Asio::DeadlineTimer _timer;
+ uint32 _worldLoopCounter;
+ uint32 _lastChangeMsTime;
+ uint32 _maxCoreStuckTimeInMs;
};
void SignalHandler(boost::system::error_code const& error, int signalNumber);
@@ -574,10 +574,10 @@ void FreezeDetector::Handler(std::weak_ptr<FreezeDetector> freezeDetectorRef, bo
}
}
- freezeDetector->_timer.expires_from_now(boost::posix_time::seconds(1));
- freezeDetector->_timer.async_wait([freezeDetectorRef](boost::system::error_code const& timerError)
+ freezeDetector->_timer.expires_after(1s);
+ freezeDetector->_timer.async_wait([freezeDetectorRef = std::move(freezeDetectorRef)](boost::system::error_code const& error) mutable
{
- return Handler(freezeDetectorRef, timerError);
+ Handler(std::move(freezeDetectorRef), error);
});
}
}