當我還是菜鳥程式設計師時只想把兩樣東西學好
第一樣就是物件導向的程式設計(OO)
第二樣就是多執行緒(Multithreading)
其實VB.NET的多執行緒滿好寫的…
來寫一個最簡單例子
程式資料來源(http://www.startvbdotnet.com/threading/default.aspx)
' 這類別沒什麼特別的,只是做一個簡單的For Loop加總
Public Class Count1
Public CountTo as Integer
' 當程序處理完畢,透過這個method來讓對方知道你已經做完了
Public event FinishedCounting(ByVal NumberOfMatches as Integer)
Sub Count()
Dim ind,tot as Integer
tot=0
For ind=1 to CountTo
tot+=1
Next ind
' raise一個事件出來說已經做完了
' 並將處理完的值回傳回去
RaiseEvent FinishedCounting(tot)
End Sub
End Class
' 這一段程式碼就是用來執行呼叫thread
Dim counter1 as new Count1()
Dim Thread1 as New System.Threading.Thread(Addressof counter1.Count)
Private Sub LetMeCallThread(Byval counter as Integer)
counter1.CountTo=counter
' 與物件之間的Call Back機制, 建立handler (Call Back的function)
' 當物件Raise該事件時,可以透過該function取得結果
AddHandler counter1.FinishedCounting,AddressOf FinishedCountingEventHandler
' 啟動執行緖
Thread1.Start()
End Sub
' 當Thread程式執行完畢(這就是所謂的CallBack機制)
Sub FinishedCountingEventHandler(ByVal Count as Integer)
msgbox(Count)
End Sub
第一樣就是物件導向的程式設計(OO)
第二樣就是多執行緒(Multithreading)
其實VB.NET的多執行緒滿好寫的…
來寫一個最簡單例子
程式資料來源(http://www.startvbdotnet.com/threading/default.aspx)
' 這類別沒什麼特別的,只是做一個簡單的For Loop加總
Public Class Count1
Public CountTo as Integer
' 當程序處理完畢,透過這個method來讓對方知道你已經做完了
Public event FinishedCounting(ByVal NumberOfMatches as Integer)
Sub Count()
Dim ind,tot as Integer
tot=0
For ind=1 to CountTo
tot+=1
Next ind
' raise一個事件出來說已經做完了
' 並將處理完的值回傳回去
RaiseEvent FinishedCounting(tot)
End Sub
End Class
' 這一段程式碼就是用來執行呼叫thread
Dim counter1 as new Count1()
Dim Thread1 as New System.Threading.Thread(Addressof counter1.Count)
Private Sub LetMeCallThread(Byval counter as Integer)
counter1.CountTo=counter
' 與物件之間的Call Back機制, 建立handler (Call Back的function)
' 當物件Raise該事件時,可以透過該function取得結果
AddHandler counter1.FinishedCounting,AddressOf FinishedCountingEventHandler
' 啟動執行緖
Thread1.Start()
End Sub
' 當Thread程式執行完畢(這就是所謂的CallBack機制)
Sub FinishedCountingEventHandler(ByVal Count as Integer)
msgbox(Count)
End Sub
文章標籤
全站熱搜

我暈了~@@~
暈沒關係… 別吐就好…
哇哈哈哈~ 不會啦~我不會吐啦~ 我吐了~你要吃嗎~修耶唷~(台語)
什麼東東ㄚ迷懂迷懂... 幫我用個小c的程式吧..有網路的概念.. 資料可以由A電腦傳到B電腦 不用太複雜... 天ㄚ..我哪會程式ㄚ 但是我就是要有程式可以傳送資料 快幫幫我吧..
徐大姐… 資料可以由A電腦傳到B電腦 用C..不太容易a.... 小弟我功力沒到那邊,抱歉丫…
高手請問一下... 如果要用VB.net 寫二各執行緒 ㄧ個是 Server端 : 執行緒一直監控Client端是否有送資料過去, 有的話 將那張圖畫出來 ㄧ個是 Client端 : 執行緒一直檢查滑鼠座標,如果有動作,和將這端的螢幕變成 ㄧ張圖,傳送給對方 要怎麼寫阿? 可以幫幫我嗎!!感激
這個不只要用執行緒 還要配合win soket哦… 原則上是要透過一個port來做資料的溝通 兩台電腦之間,事先要講好用那一個port來溝通 (例如iis就是port:80) 之後再配合執行緒來取得另一台電腦送進來的資料 win soket的程式,我並沒有實際寫過… 只能說抱歉了…
高手 那可以請問一下 如果要在表單中開啟IE 並設定瀏覽器在表單中的大小 要怎麼寫阿? Private Sub IEForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Process.Start("www.google.com") End Sub 這樣都會另外開啟 可以開啟在表單中嗎
在表單中開啟IE… 要呼叫IE的元件 早期在VB6裏面可以在表單中拉一個IE的元件進來 功能和IE很像的 在.net的話…就比較不清楚了
try this http://vb.net-informations.com/communications/vb.net_multithreaded_Socket_programming.htm liam