在C#中可以使用TaskScheduler
類來監控任務的執行情況。下面是一個簡單的示例代碼,演示如何使用TaskScheduler
來監控任務的執行情況:
using System;
using System.Threading;
using System.Threading.Tasks;
class Program
{
static void Main()
{
// 創建一個任務
Task task = Task.Run(() =>
{
// 模擬任務執行過程
for (int i = 0; i < 10; i++)
{
Console.WriteLine($"Task is running, iteration {i}");
Thread.Sleep(1000);
}
});
// 創建一個任務調度器
TaskScheduler taskScheduler = TaskScheduler.FromCurrentSynchronizationContext();
// 監控任務的執行情況
task.ContinueWith((prevTask) =>
{
Console.WriteLine("Task has completed!");
}, TaskContinuationOptions.None, taskScheduler);
Console.WriteLine("Press any key to exit...");
Console.ReadKey();
}
}
在上面的代碼中,我們首先創建了一個任務task
,然后使用TaskScheduler.FromCurrentSynchronizationContext()
方法創建了一個任務調度器taskScheduler
。接著,我們使用task.ContinueWith()
方法來監控任務的執行情況,當任務執行完畢時會打印出"Task has completed!"。
通過使用TaskScheduler
類,我們可以更靈活地控制任務的執行和監控任務的執行情況。