refactor(Core/Misc): Use steady_timer instead of deadline_timer (#20940)

This commit is contained in:
Kitzunu
2024-12-19 18:00:03 +01:00
committed by GitHub
parent ea02be964b
commit 0bc70670d2
9 changed files with 65 additions and 78 deletions

View File

@@ -1,34 +0,0 @@
/*
* This file is part of the AzerothCore Project. See AUTHORS file for Copyright information
*
* This program is free software; you can redistribute it and/or modify it
* under the terms of the GNU Affero General Public License as published by the
* Free Software Foundation; either version 3 of the License, or (at your
* option) any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License along
* with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef DeadlineTimer_h__
#define DeadlineTimer_h__
#include <boost/asio/deadline_timer.hpp>
#define DeadlineTimerBase boost::asio::basic_deadline_timer<boost::posix_time::ptime, boost::asio::time_traits<boost::posix_time::ptime>, boost::asio::io_context::executor_type>
namespace Acore::Asio
{
class DeadlineTimer : public DeadlineTimerBase
{
public:
using DeadlineTimerBase::basic_deadline_timer;
};
}
#endif // DeadlineTimer_h__

View File

@@ -19,7 +19,6 @@
#define IoContext_h__
#include <boost/version.hpp>
#include <boost/asio/io_context.hpp>
#include <boost/asio/post.hpp>
#define IoContextBaseNamespace boost::asio
@@ -52,9 +51,9 @@ namespace Acore::Asio
}
template<typename T>
inline decltype(auto) get_io_context(T&& ioObject)
inline boost::asio::io_context& get_io_context(T&& ioObject)
{
return ioObject.get_executor().context();
return static_cast<boost::asio::io_context&>(ioObject.get_executor().context());
}
}