首页 / 知识
关于vb.net:如何让我的C#程序睡眠50毫秒?
2023-04-17 01:30:00

How do I get my C# program to sleep for 50 msec?如何使我的C#程序休眠50毫秒? 这似乎是一个简单的问题,但是我正处于暂时性的脑衰竭时刻!
但是请记住,在主GUI线程中执行此操作将阻止您的GUI更新(感觉"缓慢")。
只需删除 (几乎)任何编程语言都有3种选择可以等待:
1。-在C#中等待松散:
但是,Windows线程调度程序导致 对于2-C#中的紧等待是:
我们也可以使用 3。-组合:
该代码定期阻塞线程1毫秒(或稍长一些,具体取决于OS线程调度),因此处理器在阻塞时间并不忙,并且代码不会消耗100%的处理器功率。在阻塞之间仍然可以执行其他处理(例如:UI更新,事件处理或进行交互/通信工作)。
您无法在Windows中指定确切的睡眠时间。为此,您需要一个实时操作系统。您能做的最好的就是指定最短的睡眠时间。然后由调度程序在那之后唤醒您的线程。永远不要在GUI线程上调用 从现在开始,您具有异步/等待功能,最好的睡眠时间为50ms是使用Task.Delay:
或者,如果您以.NET 4(针对VS2010的Async CTP 3或Microsoft.Bcl.Async)为目标,则必须使用:
这样,您就不会阻塞UI线程。 使用此代码
线程将不会在指定的时间内调度为由操作系统执行。此方法将线程的状态更改为包括WaitSleepJoin。
此方法不执行标准COM和SendMessage泵送。
为了提高可读性:
从.NET Framework 4.5开始,可以使用:
两全其美:
|
最新内容
相关内容
linux操作数据库命令?
linux操作数据库命令?,地址,服务,系统,密码,数据库,工具,名字,首页,命令,参数,如何实现MySQL数据库的基本用法在linux下1、mysql all-databaselinux系命令的操作?
linux系命令的操作?,工作,系统,信息,网络,命令,基础,简介,管理,目录,操作,linux的cd命令的使用方法cd ~:回到用户家目录。注:这得看你是用什么用linux执行多次命令?
linux执行多次命令?,系统,信息,标准,工作,情况,命令,周期性,服务,代码,时间,linux系统能把很多命令一起执行,然后结果输出一个文件吗?就是scrilinux显示操作命令?
linux显示操作命令?,系统,工作,地址,信息,管理,命令,目录,基础,工具,标准,linux常用命令1、linux系统常用操作命令linux系统常用操作命令如下:llinux并行化执行命令?
linux并行化执行命令?,系统,工具,信息,命令,名称,网络,管理,首页,服务,暂停,Linux多台主机批量执行命令1、执行命令(记得先对doCommand.s h增加如何执行linux命令?
如何执行linux命令?,单位,系统,网络,信息,权威,命令,文件,音乐,目录,选项,mv什么意思呢?1、MV就是音乐短片(Music Video),是指与音乐(通常大部分是linux打断执行的命令?
linux打断执行的命令?,系统,状态,网站,标准,通用,客服,人员,名字,网络,暂停,Linux停止命令继续执行的方法是什么它只是在进程中维持挂起的状态linux操作常用命令?
linux操作常用命令?,工作,系统,地址,信息,命令,目录,管理,标准,基础,工具,linux常用命令及用法linux系统常用操作命令如下:ls:全拼list,功能是列linux命令没执行完?
linux命令没执行完?,系统,设备,工具,情况,密码,状态,电脑,管理,材料,服务,Linux:写的脚本执行过程中为什么会有cp未复制完,或者tar未解压完的linux操作命令重命名?
linux操作命令重命名?,图片,软件,名称,名字,文件,命令,状态,代码,工具,系统,Linux下批量修改文件名1、Linux下修改文件名有mv和rename。 其中mshell中执行linux命令?
shell中执行linux命令?,系统,名称,环境,管理,工作,代码,技术,软件,经理,基础,it运维需要学什么?1、单纯学编程语言本身,对于一些英文符号,需要记linux打印命令执行?
linux打印命令执行?,信息,系统,工具,服务,命令,发行,基础,位置,设备,时间,怎么使用CMD里面的print命令?1、print 打印命令用法:PRINT [/D:device