在C#控制台应用程序中实现计时器,你可以使用System.Diagnostics.Stopwatch
类来精确测量时间间隔,或者使用System.Timers.Timer
或System.Threading.Timer
类来实现定时任务。
以下是使用Stopwatch
和Timer
的一个简单示例:
using System;
using System.Diagnostics;
class Program
{
static void Main()
{
Stopwatch stopwatch = new Stopwatch();
stopwatch.Start();
// 模拟游戏运行
for (int i = 0; i < 1000000; i++)
{
// 游戏逻辑
}
stopwatch.Stop();
Console.WriteLine($"游戏运行时间: {stopwatch.ElapsedMilliseconds} ms");
}
}
using System;
using System.Timers;
class Program
{
static void Main()
{
Timer timer = new Timer();
timer.Interval = 1000; // 设置间隔为1秒
timer.Elapsed += OnTimedEvent; // 绑定事件
timer.AutoReset = true; // 设置为一直执行
timer.Enabled = true; // 启动计时器
Console.WriteLine("按任意键退出...");
Console.ReadKey();
timer.Stop();
}
private static void OnTimedEvent(Object source, ElapsedEventArgs e)
{
Console.WriteLine($"计时器触发: {e.SignalTime}");
}
}
Timer.Enabled
设置为true
。Interval
设置是否正确。Stopwatch
在某些系统上可能不够精确,可以考虑使用高精度的时间源,如QueryPerformanceCounter
。希望这些信息能帮助你解决在C#控制台游戏中实现计时器时遇到的困难。
领取专属 10元无门槛券
手把手带您无忧上云