原因很簡單
創(chuàng)新互聯(lián)建站是一家專業(yè)提供云溪企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、H5高端網(wǎng)站建設(shè)、小程序制作等業(yè)務(wù)。10年已為云溪眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)的建站公司優(yōu)惠進(jìn)行中。
你是定義了一個T的新線程,但是很可惜你在BeginDoSub這個獨(dú)立的線程中又定義了一個deSomeSub的委托,并且直接用Me.Invoke把實(shí)際的執(zhí)行任務(wù)提交給界面主線程運(yùn)行了
所以你的圖片的處理函數(shù)實(shí)際上是在主線程中運(yùn)行的,新線程等于沒用
正確的作法是,T定義為SomeSub這個函數(shù)為入口的線程,并啟動它
在界面進(jìn)度條更改的時候再使用Invoke來調(diào)用委托來進(jìn)行界面更改。
Sub bc()
Dim cs As New qq163(AddressOf js)
Application.DoEvnts
Invoke(cs)
End Sub
Me.Invoke(d, i)
問題出在這里!
直接用Me.Invoke把實(shí)際的執(zhí)行任務(wù)提交給主線程運(yùn)行
所以你的處理函數(shù)實(shí)際上是在主線程中運(yùn)行的,新線程等于沒用
正確的作法是,定義一個函數(shù)為入口的線程,并啟動它
在需要調(diào)用的時候再使用Invoke來調(diào)用委托來進(jìn)行更改。
----------------------------------------------------------------
方法已經(jīng)給你說明白了,新建1個線程和2個線程來操作有什么不通用的哪??
問題不是線程個數(shù)的問題,是你線程中的函數(shù)一直在調(diào)用settext和settext1兩個函數(shù),而這兩個函數(shù)都是處于method 方法 的while的循環(huán)中,相當(dāng)于不間歇的在使用 Me.Invoke(d, i)這個方法。
----------------------------------------------------------------
如果你要不停地通過另外一個線程修改richtextbox內(nèi)的內(nèi)容,那也可以新啟動一個線程,由這個線程的入口方法創(chuàng)建一個richtextbox ,再由這個線程來對這個richtextbox 進(jìn)行操作。當(dāng)然,你也可以用不安全的線程間的操作方法來實(shí)現(xiàn)。
網(wǎng)頁名稱:關(guān)于vb.net委托后假死的信息
網(wǎng)頁URL:http://chinadenli.net/article0/dogcdoo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供App設(shè)計(jì)、Google、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)頁設(shè)計(jì)公司、關(guān)鍵詞優(yōu)化、建站公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)