福感科技有限公司 欢迎您!
联系方式

    地址:北京市平谷区马坊镇金河北街17号院3号楼7层712

    电话:010-89968230

    网站:http://www.fgsense.com

你的位置:首页 > 新闻动态 > 专题报道

C#延时导致UI界面不能刷新的问题

2021-11-12 10:48:09      点击:

很多初学者在写C#程序的时候,需要程序等待某个时间,但是又不想用比较繁琐的线程等操作,因此用Thread.Sleep()函数,但是这个函数在等待过程中会操作界面的卡死。那么,如何能保证既不卡死又能达到等待的功能呢? Thread.Sleep()导致系统程序事件不能同步执行。

其实也很简单,用下面的一段代码代替Thread.Sleep()函数即可。


#region 毫秒延时 界面不会卡死
        public static void Delay(int mm)
        {
            DateTime current = DateTime.Now;
            while (current.AddMilliseconds(mm) > DateTime.Now)
            {
                Application.DoEvents();
            }
            return;
        }
#endregion

Copyright 2019 www.fgsense.com

福感科技有限公司 版权所有 All Rights Reserved

京ICP备20002031号

010-89968230