首先,你把你那些要運行很久的過程。盡量放在一個過程中。
創(chuàng)新互聯(lián)于2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目做網(wǎng)站、網(wǎng)站制作網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元白水做網(wǎng)站,已為上家服務(wù),為白水各地企業(yè)和個人服務(wù),聯(lián)系電話:13518219792
因為線程只能是過程,不能使函數(shù),沒有返回值的。
然后,在某個事件下這樣寫:
**這里我假設(shè)你的那個很就的過程叫做 sub aaa()
調(diào)用如下:
Dim mythread As New System.Threading.Thread(AddressOf aaa)
mythread.Start()
***********
這樣就是定義一個線程,名字叫 mythread,這個線程會運行aaa這個過程。
start 就是讓線程運行。
多線程操控同一個空間容易出現(xiàn)混亂,可通過SyncLock語句,將對空間的操作添加至lock語句內(nèi)部,
Class?simpleMessageList
Public?messagesList()?As?String?=?New?String(50)?{}
Public?messagesLast?As?Integer?=?-1
Private?messagesLock?As?New?Object
Public?Sub?addAnotherMessage(ByVal?newMessage?As?String)
SyncLock?messagesLock
messagesLast?+=?1
If?messagesLast??messagesList.Length?Then
messagesList(messagesLast)?=?newMessage
End?If
End?SyncLock
End?Sub
End?Class
參考:
Private Sub setA()
msgbox("")
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim t1 As Threading.Thread = New Threading.Thread(AddressOf setA)
t1.start
End Sub
Sub Main()
Dim thr As Thread
For Pi As Integer=0 To 4 //啟用5線程
MulParams =Pi vbTab sFile vbTab dFile vbTab 1 vbTab DelN vbTab cr vbTab cg vbTab cb vbTab IndexI
GlobalParamas(pi)=MulParams .Split(vbTab)
thr=New Thread(AddressOf MyMulThreadCaller)
thr.Start() //啟動多線程進程
Application.DoEvents
Next
End Sub
這個線程對象一定有個完成時或者進行中的動作,你可以用AddHandler語句來將過程委托給ProcessChanged或者ProcessConpleted動作。