当前位置:首页 > 开发 > C# > 正文内容

C# 延时命令

C#4年前 (2021-08-26)

方法1

System.Threading.Thread.Sleep(1000);

缺点:如果在主线程使用,命令执行完成之前,程序会进入假死状态,

方法2

        public static void Delay(int milliSecond)
        {
            int start = Environment.TickCount;
            while (Math.Abs(Environment.TickCount - start) < milliSecond)
            {
                Application.DoEvents();
            }
        }

缺点:不会假死,但占用一定量的CPU,

方法3

        public static bool Delay(int delayTime)
        {
            DateTime now = DateTime.Now;
            int s;
            do
            {
                TimeSpan spand = DateTime.Now - now;
                s = spand.Seconds;
                Application.DoEvents();
            }
            while (s < delayTime);
            return true;
        }

缺点:不会假死,但占用一定量的CPU,

方式4

            var task_1 = Task.Run(async delegate
            {
                await Task.Delay(3000);
                Console.WriteLine("3秒后执行,方式一 输出语句...");
                return;
            });

缺点:异步操作

转载请注明出处。

本文链接:http://www.pythonopen.com/?id=162

相关文章

C# 结构体struct 例子

/// <summary> /// 结构体 /// &...

C# BackgroundWorker

1.概述BackgroundWorker是一个在 WinForms 应用程序中用于简化在后台线程执行...

C# double转为string并保留两位小数

在 C# 中,可以使用多种方式将 double 类型的数据转换为 string 类型并保留两位小数,...

C# ref 和out

ref关键字概念:ref是 C# 中的一个关键字,用于按引用传递参数。当在方法调用中使用ref关键字...

C# Byte[]转为Image

以下是在 C# 中将byte[](字节数组,通常表示图像的二进制数据)转换为Image类型的常见方法...