我想在两条指令之间等待几秒钟,但不阻止执行。
例如,Thread.Sleep(2000)
这不好,因为它会阻塞执行。
我的想法是,我调用一个方法,然后等待 X 秒(例如 20 秒)监听即将到来的事件。在 20 秒结束时,我应该根据 20 秒内发生的情况进行一些操作。
我认为你追求的是Task.Delay。这不会像 Sleep 那样阻塞线程,这意味着您可以使用异步编程模型使用单个线程来完成此操作。
async Task PutTaskDelay()
{
await Task.Delay(5000);
}
private async void btnTaskDelay_Click(object sender, EventArgs e)
{
await PutTaskDelay();
MessageBox.Show("I am back");
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)