我开始操作,命令行应用程序获取的参数之一是Number
,表示我的操作需要运行多少时间。
int duration = int.Parse(args[0]) // run my operation for this time in minutes
这是我尝试过的(不起作用):
...
DateTime start = DateTime.Now;
// check whether this time in minutes passed
if (start.Minute > duration )
break;
最佳答案
编辑:使用UtcNow
void DoWork(int durationInMinutes)
{
DateTime startTime = DateTime.UtcNow;
TimeSpan breakDuration = TimeSpan.FromMinutes(durationInMinutes);
// option 1
while (DateTime.UtcNow - startTime < breakDuration)
{
// do some work
}
// option 2
while (true)
{
// do some work
if (DateTime.UtcNow - startTime > breakDuration)
break;
}
}
关于c# - 如何检查特定时间是否过去,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27359345/