📜  C# 1 分钟延迟 - C# (1)

📅  最后修改于: 2023-12-03 14:39:42.249000             🧑  作者: Mango

C# 1 分钟延迟 - C#

在C#中,为了实现简单的暂停线程,可以使用Thread.Sleep函数。该函数接受一个整数参数,代表线程暂停的时间(毫秒)。例如,下面的代码会暂停当前线程 1 分钟:

using System.Threading;

Thread.Sleep(60000);

注意,该函数会使线程完全暂停,不会执行任何代码,直到指定的时间过去。因此,如果在 GUI 应用程序中使用该函数,可能会导致界面冻结。如果需要在后台线程中执行任务,并在任务完成后通知 UI 线程更新 UI,建议使用异步编程模型(例如 async/await)。

除了Thread.Sleep,还有其他类似的函数可以实现暂停线程,例如Task.Delay

using System.Threading.Tasks;

await Task.Delay(60000);

该函数返回一个 Task 对象,可以在异步代码中使用。和Thread.Sleep不同,Task.Delay并不实际暂停线程,而是暂停当前 Task 执行,并安排在指定时间后恢复执行。如果当前 Task 已经完成,Task.Delay会立即返回一个已完成的 Task 对象。

总之,C# 中实现延迟执行的方法有很多种,具体使用哪种方法取决于实际需求。在编写代码时,务必要考虑到代码执行时间和用户体验,避免出现界面卡顿等问题。