我得到了这样的事情:如何在X秒后终止功能?
void func()
{
int a = int.Parse(system.readline.console());
}
但我想这个功能设置为5秒后,例如完成,即使用户没有将任何东西。我怎样才能做到这一点?
我想过这样的事情:
void func()
{
System.Timers.Timer timer = new Timer();
timer.Interval = 5000
timer.Elapsed += SomeFunc;
timer.Start()
int a = int.Parse(system.console.readline());
}
void SomeFunc(object sender, EventArgs args)
{
Thread.CurrentThread.Abort();
}
但它看起来太丑陋了。另外,我不想中止所有的线程,只是打破这个功能。我不想为此功能创建另一个线程。
答案取决于原有功能的实现。 'func'是实际的代码吗?或者你有不同的? –
如果真的只是从控制台读取,请看看http://stackoverflow.com/questions/57615/how-to-add-a-timeout-to-console-readline –
查尔斯,确切地说!非常感谢! – arielttt0