VB.NET多線程開發執行個體

來源:互聯網
上載者:User
多線程 VB.NET(Visual Basic.NET)是為適應Microsoft .NET架構的需要,對Visual Basic進行了重大改造後的開發工具。它比Visual Basic 6.0功能更強大,更便於使用。其中最重要的變化就是對象繼承,在VB.NET中,所有可管理的類型都衍生自System.Object。作為編程工具,最重要的一個特性就是垃圾片段的回收,它由CLR(Common Language Runtime)進行控制,並提供更好的記憶體管理功能。通用的類型定義可以提供更好的互通性和協同工作能力,因此,VB.NET顯得更強大、更具可靠性。
在VB.NET中,大多數CLR內建的類型都在System名字空間裡已經定義了。比如:System.Object, System.Int32, 和 System.String。要注意的是:一個名字空間可能嵌在另一個名字空間內,象System.Data裡就有System.Data.DataSet的類。
代表是CLR編程模型很重要的一個新概念。代表是一個特殊類型的可管理的類,當你建立一個代表的執行個體時,你必須提供一個帶有匹配簽名的方法執行的地址,一旦建立了一個代表的執行個體,調用方法將變的很容易。
過去,我們利用VB開發多線程的應用程式時,是一件很令人痛苦的事,經常是多線程的程式運行是會變成多錯誤的程式!但在VB.NET中,這種狀況已經大為改觀。現在,我們利用VB.NET處理多線程和利用JAVA處理多線程一樣簡單了。下面我們就舉個例子,來看看VB.NET的多線程吧!
下面是多線程程式threadtest.vb的代碼:
 
imports System
imports System.Threading
 
public class AClass
 
public sub Method1()
Dim i as integer
For i = 1 to 100
Console.Writeline("這是類AClass方法method1的內容",i)
next
end sub
 
public sub Method2()
Dim i as integer
For i = 1 to 100
Console.Writeline("這是類AClass方法method2的內容",i)
next
end sub
 
end class
 
public class ThreadTest
 
public shared sub Main()
dim obj as new aclass
dim th1,th2 as thread
 
th1=new Thread(new ThreadStart(addressof obj.method1))
th1.start
 
th2=new Thread(new ThreadStart(addressof obj.method2))
th2.start
 
dim i as integer
For i= 1 to 100
Console.WriteLine("Main方法裡的內容",i)
Next
end sub
 
end class
 
現在,來讓我們剖析一下上面的例子:
1.我們建立了我們自己的類AClass,並建立了兩個方法:Method1和Method2。
2.這兩個方法很簡單,只有一個For迴圈,向輸出裝置輸出一些資訊。
3.我們還定義了另外一個類ThreadTest來使用上面建立的類AClass。
4.在Main()方法中,我們建立了類Thread的執行個體。
5.類Thread可以在System.Threading名字空間裡得到,它定義了處理線程的屬性和方法。
6.在類Thread的構造器中,我們使用了類ThreadStart,類ThreadStart是一個代表,標誌著當一個線程開始時就開始執行定義的方法。
7.為了執行定義的方法,我們實際調用的是線程的Start()方法。
8用VBC來編譯上面的程式:
vbc /out:threadtest.exe threadtest.vb
9.運行編譯後的程式,我們將會看到我們定義的兩個方法和main()方法的混合輸出,這就說明每一個方法都在自己的線程下運行。
10.除了上面的方法,線程還有下面常用的方法:
Stop():停止線程的運行。
Suspend():暫停線程的運行。
Resume():繼續線程的運行。
Sleep():停止線程一段時間(單位為毫秒)。
 
上面只是VB.NET多線程的一個簡單的例子,希望對大家有所啟發!


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.