using System.Timers; using XFEExtension.NetCore.CyberComm; using XFEExtension.NetCore.ServerInteractive.Implements.CoreService; namespace XFEExtension.NetCore.ServerInteractive.Utilities.Server.Services.CoreService; /// /// 核心服务器天数服务 /// public class DailyCounterService : ServerCoreOriginalServiceBase { private int _runningDays; private DateTime _startTime; /// public override void RequestReceived(object? sender, CyberCommRequestEventArgs e) { } /// public override void ServerStarted(object? sender, EventArgs e) { Console.WriteLine($"[DEBUG]服务器({XFEServerCore.ServerCoreName})天数统计服务已启动!"); _startTime = DateTime.Now; _runningDays = 0; var serverTimer = new System.Timers.Timer(TimeSpan.FromHours(24)) { AutoReset = true }; serverTimer.Elapsed += ServerTimer_Elapsed; serverTimer.Start(); } private void ServerTimer_Elapsed(object? sender, ElapsedEventArgs e) { _runningDays++; Console.WriteLine($"[DEBUG]服务器({XFEServerCore.ServerCoreName})自上次({_startTime})启动以来,已稳定运行 {_runningDays}天"); } }