在C#中一段时间​​后调用函数

时间:2014-04-23 00:46:25

标签: c#

我有一个带调用函数的c#代码,如:

private void cmdCommand_Click(object sender, EventArgs e)
    {
       m_socClient.Close();
    }

但现在我希望在30秒之后调用m_socClient.Close();函数。那可能吗?

1 个答案:

答案 0 :(得分:11)

是的,使用async / await功能:

private async void cmdCommand_Click(object sender, EventArgs e)
{ 
    await Task.Delay(30000);
    m_socClient.Close();
}

您也可以使用Thread.Sleep执行此操作,但它会阻止您的UI主题,并且在任务完成之前您的窗口将无法响应。