前言
在上回 Post not found: Task運行處理-Run、Start、RunSynchronously-C-SyncAndAsync [Day6]Task運行處理(Run、Start、RunSynchronously) ,我們學習了Task的各種啟動方式。
而今回主要來撰寫不會停止的背景Task。
實作
不終止的非同步事件 ex:多個while(true)常駐。
主要使用以下的模板去製作常駐程式:
1 | var endlessTask = Task.Run(async () => |
簡單來說就是開一個異步的Task讓他跑即可。
在以下的範例中endlessTask1、endlessTask2會不停的印出資料。
1 | using System; |
運行結果:
1 | EndlessTask1 |
直到關掉程式都會一直印。
總結
在這回中練習了背景常駐的Task,通常會在監聽某個請求while中使用。
如果是以目前處理過的code,就是在socket處理上會大量使用。