主題
UI 執行緒 / 定期處理主題
可一次瀏覽 WPF / WinForms、UI 執行緒、async/await、Dispatcher、計時器的使用區分的主題頁面。
為什麼這個主題容易卡住
在 WPF / WinForms 中,非同步、UI 更新、定期處理一旦混在一起,就很難看清哪段處理跑在哪個執行緒上。 這個主題是讓 UI 凍結、跨執行緒更新、計時器選擇上的猶豫,能當成一個整體來追蹤的入口。
- 不容易知道
await之後會回到哪裡 - 該在 UI 上執行的處理與該移到背景的處理混在一起
DispatcherTimer、System.Threading.Timer、PeriodicTimer的職責很模糊- 看不清 WinForms / WPF 易於維護的形式
諮詢中常出現的論點
- 還留著
.Result/.Wait(),畫面容易停住 Task.Run與 UI 更新的邊界很模糊- 定期執行的實作散落各處,出現 drift 或重複執行
- 想減少對 UI 執行緒的依賴,又不想破壞畫面的職責
適合的進行方式
在這個領域,比起只看 async / await、只看計時器這樣分開看,把 UI 執行緒與定期處理一起整理在實務上更有效。
把相關的文章群與服務頁面合在一起看,就更容易決定該從設計判斷還是實作修正著手。
聯絡我們
如果您遇到的課題與本頁內容相近,歡迎附上目前狀況與所需支援的形式與我們聯絡。