91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

如何監控C# Task的執行狀態

c#
小樊
135
2024-09-04 13:27:44
欄目: 編程語言

要監控 C# Task 的執行狀態,可以使用以下方法:

  1. 使用 Task.Status 屬性:

Task.Status 屬性返回一個 TaskStatus 枚舉值,表示任務的當前狀態。可以通過輪詢此屬性來檢查任務的狀態。

using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
        Task task = Task.Run(() =>
        {
            // 模擬長時間運行的任務
            Task.Delay(2000).Wait();
        });

        while (!task.IsCompleted)
        {
            Console.WriteLine($"Task status: {task.Status}");
            await Task.Delay(500);
        }

        Console.WriteLine("Task completed!");
    }
}
  1. 使用 ContinueWith 方法:

ContinueWith 方法允許在任務完成后執行另一個任務。這可以用于在任務完成時處理結果或檢查任務的狀態。

using System;
using System.Threading.Tasks;

class Program
{
    static void Main(string[] args)
    {
        Task task = Task.Run(() =>
        {
            // 模擬長時間運行的任務
            Task.Delay(2000).Wait();
        });

        task.ContinueWith(t =>
        {
            if (t.IsFaulted)
            {
                Console.WriteLine("Task faulted: " + t.Exception);
            }
            else if (t.IsCanceled)
            {
                Console.WriteLine("Task canceled.");
            }
            else
            {
                Console.WriteLine("Task completed successfully.");
            }
        });

        Console.ReadLine();
    }
}
  1. 使用 async/await 關鍵字:

在 C# 5.0 及更高版本中,可以使用 async/await 關鍵字簡化異步編程。通過將方法標記為 async 并在需要等待的任務前添加 await 關鍵字,可以輕松地等待任務完成。

using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
        try
        {
            await Task.Run(() =>
            {
                // 模擬長時間運行的任務
                Task.Delay(2000).Wait();
            });

            Console.WriteLine("Task completed successfully.");
        }
        catch (Exception ex)
        {
            Console.WriteLine("Task faulted: " + ex);
        }

        Console.ReadLine();
    }
}

這些方法可以幫助你監控 C# Task 的執行狀態。根據你的需求和項目類型,可以選擇最適合你的方法。

0
奉贤区| 塔河县| 烟台市| 浙江省| 松滋市| 保康县| 霍林郭勒市| 中西区| 江安县| 庆元县| 喀什市| 襄汾县| 灵山县| 斗六市| 庆安县| 如东县| 浏阳市| 涪陵区| 天水市| 建瓯市| 尤溪县| 南召县| 三明市| 厦门市| 横峰县| 延吉市| 临汾市| 宁夏| 连城县| 金门县| 大兴区| 台东县| 铜梁县| 泽州县| 蒙山县| 乐业县| 怀柔区| 政和县| 岐山县| 阳高县| 珠海市|