Vb.Net等待进程30secs

时间:2011-05-20 09:50:39

标签: vb.net

我点击按钮时会触发三个事件。

在运行第一个事件后,我想等待30秒等待nex事件发生。

我如何等待(我的意思是循环30秒)。

谢谢, 纳格

4 个答案:

答案 0 :(得分:6)

您可以直接尝试使用此代码:

    MessageBox.Show("Test") ' Execute your method 1
    System.Threading.Thread.Sleep(30000)
    MessageBox.Show("Test2") ' Proceed with the other one :)

答案 1 :(得分:2)

如果您在UI线程上等待,您将阻止整个UI,Windows将显示您的应用程序为无响应。

最好:

  • 更新用户界面以显示其正忙,包括禁用控制以阻止用户输入。
  • 使用计时器控件(详细信息取决于WinForms或WPF)在延迟时间后触发事件
  • 在计时器的事件处理程序中完成工作。

如果工作是CPU或IO密集型(即可能阻塞超过几十毫秒),则在线程池中执行工作(例如。BackgroundWorker组件)。请记住,您需要使用Control.Invoke从工作线程对UI进行任何更改。

答案 2 :(得分:0)

您可以使用线程System.Threading.Thread.Sleep(30000);来执行。

答案 3 :(得分:0)

为它使用计时器,并为计时器(1sec = 1000)

设置30秒的间隔
timer1.Interval=30000