我是 C# 的新手;我主要是做Java。
我想按照以下方式实现超时:
int now= Time.now();
while(true)
{
tryMethod();
if(now > now+5000) throw new TimeoutException();
}
我如何在 C# 中实现它?谢谢!
最佳答案
一种可能的方式是:
Stopwatch sw = new Stopwatch();
sw.Start();
while(true)
{
tryMethod();
if(sw.ElapsedMilliseconds > 5000) throw new TimeoutException();
}
但是您目前无法跳出循环。我建议让 tryMethod
返回一个 bool
并将其更改为:
Stopwatch sw = new Stopwatch();
sw.Start();
while(!tryMethod())
{
if(sw.ElapsedMilliseconds > 5000) throw new TimeoutException();
}
关于c# - 在 C# 中实现超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10143980/