【发布时间】:2013-12-10 12:31:57
【问题描述】:
我制作了一个 C# 闹钟,它工作正常。问题是它运行时会消耗 20% 的处理器(在 i5 2410M 处理器上)我该怎么办? 这是我的代码:
using System;
namespace assigment1
{
class Program
{
static void Main(string[] args)
{
DateTime uptime = new DateTime (2013,12,10,4,0,0);
Console.WriteLine("This alarm is set to go off at 4:00 am");
while (true)
{
if (DateTime.Now.Minute == uptime.Minute && DateTime.Now.Hour == uptime.Hour)
{
for (int j = 1000; j < 22767; j++)
{
Console.Beep(j, 500);
Console.Write("Wake up! it is {0}:{1} already! ", DateTime.Now.Hour, DateTime.Now.Minute);
}
}
}
}
}
}
【问题讨论】:
-
实际上没有任何延迟(而且只有半秒)你会很高兴它只占用了 20% :-)
-
你问错问题了。您应该问为什么它几乎将所有 CPU 用于其中一个内核。与其解决问题,不如了解原因。
-
另外,这是作业*。见stackoverflow.com/questions/8934570/…
标签: c# time clock alarm processor