多線程是用于處理復(fù)雜項目的
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、小程序定制開發(fā)、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了嘉興免費建站歡迎大家使用!
打個比方
你的主程序線程A中有個循環(huán),由于代碼是一行行走的,所以循環(huán)結(jié)束前下面的代碼無法運行,而此時主界面的反應(yīng)就類似卡死的樣子,你點擊按鈕也沒有反應(yīng),因為主線程在忙著循環(huán)呢,所以對按鈕的事件代碼要等待了,如果要避免這種情況,就要用到多線程,另開一個新線程專門用來執(zhí)行循環(huán)代碼,主界面就不會卡死了,只要在循環(huán)結(jié)束后將結(jié)果傳回主線程調(diào)用就可以了,再復(fù)雜點要涉及到委托,控制了
按你的要求其實你的代碼用不到多線程,只要把sleep放到兩段代碼中間就可以了。
新線程結(jié)束用thread.abort()
首先,你把你那些要運行很久的過程。盡量放在一個過程中。
因為線程只能是過程,不能使函數(shù),沒有返回值的。
然后,在某個事件下這樣寫:
**這里我假設(shè)你的那個很就的過程叫做 sub aaa()
調(diào)用如下:
Dim mythread As New System.Threading.Thread(AddressOf aaa)
mythread.Start()
***********
這樣就是定義一個線程,名字叫 mythread,這個線程會運行aaa這個過程。
start 就是讓線程運行。
ListBox操作需要用Invoke。另外多線程方式并不是并行處理。
建議采用.net framework 4 帶的并行處理循環(huán)操作,若不是4.0版本的framework,可以使用Aforge的并行庫比較方便。
網(wǎng)站名稱:vb.net線程多次開關(guān),VB多線程
URL地址:http://jinyejixie.com/article22/dseccjc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、定制開發(fā)、網(wǎng)站設(shè)計公司、網(wǎng)站設(shè)計、ChatGPT、網(wǎng)站營銷
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)