使用BackgroundWorker解決視窗卡死

2022-03-08 08:28:33 字數 676 閱讀 8013

使用控制項 backgroundworker 的實質是為該程序新建立乙個執行緒來執行耗時操作。

bool changed = false

;private

void tabcontrol1_selected(object

sender, tabcontroleventargs e)

}}private

void backgroundworker1_dowork(object

sender, doworkeventargs e)

textbox1.text =sum.tostring();

//time-consuming operations

changed = false

;}

與直接建立乙個執行緒相比,backgroundworker 不需要忽視控制項多執行緒的安全機制,詳見解決介面卡死的問題

。還可以使用 backgroundworker 非同步建立新的視窗:

private

void open_click(object

sender, eventargs e)

private

void backgroundworker1_dowork(object

sender, doworkeventargs e)

PDA開發系列 BackgroundWorker

摘要 在.net compact framework中,沒有backgroundworker,應該會讓我們這些用慣了backgroundworker的人感到非常的不便。backgroundworker可以非常方便解決執行緒和控制項之間的互操作問題,做出介面執行非常流暢的引用程式。該元件因wince的...

使用GraphEdit使用

1 註冊元件。其實乙個filter就是乙個com元件,所以使用之前需要註冊,可以有兩種方法對元件進行註冊。1.直接使用命令。命令列下輸入 regsvr32 hqtlystd.ax 編譯之後你會在工程目錄下的debug中找到hqtlystd.ax,這個就是要用的filter 即可註冊成功。2.vc6....

MySQL使用學習使用 mysql學習使用

1 mysql學習 1 安裝 ubuntu下直接安裝 apt get install mysql server 2 檢查伺服器是否啟動 sudo netstat tap grep mysql,如果啟動成功,出現以下資訊 tcp00localhost.localdomain mysql listen ...