亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

c# wait 能設置超時時間嗎

c#
小樊
81
2024-11-26 11:38:19
欄目: 編程語言

在C#中,Wait方法本身不能直接設置超時時間。但是,你可以使用Task類和Task.WhenAny方法來實現帶有超時時間的等待。下面是一個示例:

using System;
using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
        // 創建兩個任務,一個模擬長時間運行的任務,另一個模擬短時間運行的任務
        var longRunningTask = Task.Run(() =>
        {
            Console.WriteLine("Long running task started.");
            Thread.Sleep(5000); // 模擬長時間運行的任務
            Console.WriteLine("Long running task completed.");
        });

        var shortRunningTask = Task.Run(() =>
        {
            Console.WriteLine("Short running task started.");
            Thread.Sleep(1000); // 模擬短時間運行的任務
            Console.WriteLine("Short running task completed.");
        });

        // 使用 Task.WhenAny 等待兩個任務中的任意一個完成,并設置超時時間
        var completedTask = await Task.WhenAny(longRunningTask, shortRunningTask, TimeSpan.FromSeconds(3));

        // 檢查完成的任務是否是長時間運行的任務
        if (completedTask == longRunningTask)
        {
            Console.WriteLine("Long running task completed first.");
        }
        else
        {
            Console.WriteLine("Short running task completed first.");
        }
    }
}

在這個示例中,我們創建了兩個任務,一個模擬長時間運行的任務,另一個模擬短時間運行的任務。然后,我們使用Task.WhenAny方法等待這兩個任務中的任意一個完成,并設置超時時間為3秒。如果長時間運行的任務在3秒內完成,completedTask將指向該任務;否則,completedTask將指向短時間運行的任務。

0
准格尔旗| 潞城市| 镇雄县| 禹城市| 临沭县| 高阳县| 湛江市| 仲巴县| 阿拉善左旗| 大丰市| 米林县| 达拉特旗| 商水县| 清镇市| 阿鲁科尔沁旗| 蓬溪县| 永善县| 大新县| 阿坝| 曲松县| 伊宁县| 阿克苏市| 林甸县| 六安市| 温州市| 阿合奇县| 积石山| 厦门市| 惠安县| 明星| 钟山县| 安新县| 台前县| 孟村| 安乡县| 鄂托克前旗| 河池市| 宜良县| 隆化县| 常山县| 当阳市|