我不知道,为什么它在设定的时间没有写任何东西
DateTime trolltime = new DateTime(2013, 6, 24, 9, 25, 21); //nevermind the time
DateTime now = DateTime.Now;
goto1:
if (trolltime == now)
{
Console.WriteLine("blahblah");
}
else
{
goto goto1;
}
答案 0 :(得分:2)
当您比较两个DateTime
个对象时,会比较内部Ticks。不仅仅是几秒钟。因此,DateTime.Now
与Ticks
实例具有相同DateTime(2013, 6, 24, 9, 25, 21)
的可能性非常小。
如果你想在9:25:21大约开始,你可以创建timer并将其延迟设置为你的时间和当前时间之间的时间跨度:
DateTime trolltime = new DateTime(2013, 6, 24, 9, 25, 21);
DateTime now = DateTime.Now;
Timer timer = new Timer(callback, state, trolltime - now, TimeSpan.Zero);
答案 1 :(得分:1)
初始化后,trolltime
和now
可能不同。两者都没有改变,所以他们保持不同。
答案 2 :(得分:0)
因为trolltime
和now
可能完全不相同而您的程序跳过if
部分并转到else
部分。
但在else
部分,您将goto1
与goto
对齐。这会导致你的程序无限循环。