C# WinForm程序處理后臺繁忙導(dǎo)致前臺控件假死現(xiàn)象解決方法
特別是針對循環(huán)或timer處理中需要在窗體控件顯示數(shù)據(jù)時,因后臺處理過度繁忙而出現(xiàn)沒刷新或者假死現(xiàn)象時,可以使用
Application.DoEvents();
Application.DoEvents()的作用
private void button1_Click(object sender, EventArgs e)
{
for (int i = 0; i < 10000; i++)
{
label1.Text = i.ToString();
Application.DoEvents();
}
}
測試了一下,沒有Application.DoEvents()的時候,Label基本處于假死機(jī)狀態(tài),最后顯示一個9999,加上后會數(shù)字變換正常顯示。
從這個測驗后DoEvents的功能,應(yīng)該DoEvents就好比實現(xiàn)了進(jìn)程的同步。在不加的時候,因為優(yōu)先級的問題,程序會執(zhí)行主進(jìn)程的代碼,再執(zhí)行別代碼,而加了以后就可以同步執(zhí)行。
相關(guān)文章
C#將配置文件appsetting中的值轉(zhuǎn)換為動態(tài)對象調(diào)用
這篇文章主要介紹了將配置文件appsetting中的值轉(zhuǎn)換為動態(tài)對象調(diào)用 ,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2018-09-09C# 通過同步和異步實現(xiàn)優(yōu)化做早餐的時間
本文以一個簡單的小例子—如何做一頓早餐及如何優(yōu)化做早餐的時間來讓大家具體了解一下同步和異步方法的區(qū)別,需要的朋友可以參考一下2021-12-12Js中的substring,substr與C#中的Substring比較
本篇文章主要是對Js中的substring,substr與C#中的Substring進(jìn)行了比較。需要的朋友可以過來參考下,希望對大家有所幫助2014-01-01C#實現(xiàn)判斷一個時間點是否位于給定時間區(qū)間的方法
這篇文章主要介紹了C#實現(xiàn)判斷一個時間點是否位于給定時間區(qū)間的方法,涉及C#針對時間的轉(zhuǎn)換與判定相關(guān)技巧,需要的朋友可以參考下2015-08-08