C#使用Delay处理用户输入

   2024-10-08 9120
核心提示:在C#中可以使用Task.Delay方法来处理用户输入的延迟。例如,可以设置一个延迟时间,然后在该时间内等待用户输入,如果用户在延迟

在C#中可以使用Task.Delay方法来处理用户输入的延迟。例如,可以设置一个延迟时间,然后在该时间内等待用户输入,如果用户在延迟时间内输入了内容,则可以立即对输入内容进行处理。以下是一个示例代码:

using System;using System.Threading.Tasks;class Program{    static async Task Main(string[] args)    {        Console.WriteLine("Please enter something within 5 seconds:");                var delayTask = Task.Delay(5000); // 设置延迟时间为5秒                var userInputTask = GetUserInput(); // 获取用户输入的任务                var completedTask = await Task.WhenAny(delayTask, userInputTask); // 等待延迟任务或用户输入任务完成                if (completedTask == delayTask)        {            Console.WriteLine("Time's up. No input received.");        }        else        {            string userInput = await userInputTask;            Console.WriteLine($"User input received: {userInput}");        }    }    static async Task<string> GetUserInput()    {        return await Task.Run(() => Console.ReadLine());    }}

在上面的示例中,我们使用Task.Delay来设置一个5秒的延迟时间,然后通过Task.WhenAny方法等待延迟任务或用户输入任务的完成。如果延迟任务先完成,则提示用户未及时输入内容;如果用户输入任务先完成,则获取用户输入并进行处理。

 
举报打赏
 
更多>同类维修大全
推荐图文
推荐维修大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号