溫馨提示×

c# 定時和異步處理怎樣結合

c#
小樊
181
2024-07-14 05:46:29
欄目: 編程語言

在C#中結合定時和異步處理可以使用Task.Delay方法來實現定時任務的異步處理。下面是一個示例:

using System;
using System.Threading;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        // 開始一個定時任務
        Timer timer = new Timer(async state =>
        {
            Console.WriteLine("定時任務執行中...");

            // 異步處理邏輯
            await Task.Delay(1000); // 模擬異步處理

            Console.WriteLine("定時任務執行完畢.");
        }, null, TimeSpan.Zero, TimeSpan.FromSeconds(5));

        // 程序等待一段時間后結束
        await Task.Delay(30000); // 等待30秒
        timer.Dispose(); // 停止定時任務
    }
}

在上面的示例中,我們首先創建了一個Timer定時器,并在定時任務的回調函數中進行了異步處理。在異步處理邏輯中,我們使用Task.Delay方法模擬了異步處理的耗時操作。

Main方法中,我們使用await Task.Delay來讓程序等待一段時間后結束,這樣定時任務就會在程序運行期間一直執行。在程序結束前,需要調用timer.Dispose()來停止定時任務。

通過這種方式結合定時和異步處理,我們可以實現在C#中實現定時任務的異步處理。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女