委托,Delegate
成都創(chuàng)新互聯(lián)公司專注于企業(yè)營銷型網(wǎng)站、網(wǎng)站重做改版、鐵嶺縣網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5技術(shù)、商城網(wǎng)站開發(fā)、集團公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為鐵嶺縣等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
就是讓你處于這個線程里時,委托另一個線程去執(zhí)行一些動作
我簡單舉一個寫richtextbox的例子:
////////////////////////////////////////////
'創(chuàng)建一個名為 MySubDelegate 的委托。
Delegate Sub MySubDelegate(ByVal txt As String)
'寫信息到富文本主窗口
Private Sub txtW(ByVal txt As String)
Dim msgd As New MySubDelegate(AddressOf Me.txtW1)
Dim arg(0) As Object
arg(0) = txt
Me.Invoke(msgd, arg)
End Sub
'委托指向
Private Sub txtW1(ByVal txt As String)
Me.RichTextBox1.AppendText(txt)
End Sub
/////////////////////
這樣,你在多線程應(yīng)用時,在其他線程里用txtW(str)來寫richtextbox,就不會產(chǎn)生錯誤了。不然,直接垮線程寫richtextbox,可能會出現(xiàn)和UI線程的沖突。
Delegate?Sub?MySubDelegate(form?As?Form1)
Class?class1
Sub?Sub1(form?As?Form1)
form.Timer1.Enabled?=?True
form.Label1.Visible?=?True
MsgBox("kkk")
End?Sub
End?Class
Private?Sub?DelegateTest()
Dim?c1?As?New?class1
Dim?msd?As?MySubDelegate?=?AddressOf?c1.Sub1
Me.Invoke(msd,Me)
End?Sub
并沒有看出什么地方可能導(dǎo)致程序假死,這排版也太亂了.不妨調(diào)試一下程序,當(dāng)出現(xiàn)你說的"假死"后暫停一下程序,看看線程都卡在哪里.
另外,從設(shè)計上來看,你這里并不需要多線程操作.
文章題目:vb.net線程委托 c#多線程委托
本文來源:http://chinadenli.net/article20/hgdgjo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計、定制網(wǎng)站、網(wǎng)站設(shè)計、搜索引擎優(yōu)化、自適應(yīng)網(wǎng)站、網(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)