2
我已經在堆棧溢出中看到了一些關於使用Timer
類來做我想做的事情的參考資料,但我不相信這是正確的解決方案。讓Winforms應用程序等待幾分鐘後再繼續
基本上,我有一個按鈕(在.NET 4.0中),當點擊會經過幾個不同的子程序和做某些事情:
- 重新啓動一些服務
- 啓動命令行應用程序完成自動
- 啓動自動完成
- 啓動第三命令行應用程序,自動完成
我現在面臨的問題是,程序只是通過每一件事情並儘快將其關閉 - 除了第三個命令行應用程序必須僅在前三個完成之後觸發外,這不是問題。
我有一個sleep
調用的代碼,除了這凍結了用戶界面,我有這個應用程序,我想更新,讓用戶知道事情正在發生的狀態欄。
我正在考慮Timer
對象,但我不確定那會在做下一件事情之前真正導致暫停。
我正在使用Process.Start
方法來關閉命令行應用程序,因此它實際上並不引發事件。我應該只是讓我的子程序提出一個事件,然後讓第三個方法等待事件在它發生之前觸發?
'Await Task.Delay(x)' – SLaks
應該提到我試圖堅持.NET框架4.0。看起來這只是4.5。 –
從NuGet安裝'Microsoft.Bcl.Async' – SLaks