新聞中心
VB.NET有很多值得學(xué)習(xí)的地方,這里我們主要介紹VB.NET開(kāi)發(fā)多線(xiàn)程,包括介紹多線(xiàn)程程序threadtest.vb的代碼等方面。

十載的利州網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都全網(wǎng)營(yíng)銷(xiāo)推廣的優(yōu)勢(shì)是能夠根據(jù)用戶(hù)設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整利州建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“利州網(wǎng)站設(shè)計(jì)”,“利州網(wǎng)站推廣”以來(lái),每個(gè)客戶(hù)項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
VB.NET(Visual Basic.NET)是為適應(yīng)Microsoft .NET框架的需要,對(duì)Visual Basic進(jìn)行了重大改造后的開(kāi)發(fā)工具。它比Visual Basic 6.0功能更強(qiáng)大,更易于使用。其中最重要的變化就是對(duì)象繼承,在VB.NET中,所有可管理的類(lèi)型都衍生自System.Object。作為編程工具,最重要的一個(gè)特性就是垃圾碎片的回收,它由CLR(Common Language Runtime)進(jìn)行控制,并提供更好的內(nèi)存管理功能。通用的類(lèi)型定義可以提供更好的互操作性和協(xié)同工作能力,因此,VB.NET顯得更強(qiáng)大、更具可靠性。
在VB.NET中,大多數(shù)CLR內(nèi)建的類(lèi)型都在System名字空間里已經(jīng)定義了。比如:System.Object, System.Int32, 和 System.String。要注意的是:一個(gè)名字空間可能嵌在另一個(gè)名字空間內(nèi),象System.Data里就有 System.Data.DataSet的類(lèi)。
代表是CLR編程模型很重要的一個(gè)新概念。代表是一個(gè)特殊類(lèi)型的可管理的類(lèi),當(dāng)你創(chuàng)建一個(gè)代表的實(shí)例時(shí),你必須提供一個(gè)帶有匹配簽名的方法執(zhí)行的地址,一旦創(chuàng)建了一個(gè)代表的實(shí)例,調(diào)用方法將變的很容易。
過(guò)去,我們利用VB.NET開(kāi)發(fā)多線(xiàn)程的應(yīng)用程序時(shí),是一件很令人痛苦的事,經(jīng)常是多線(xiàn)程的程序運(yùn)行是會(huì)變成多錯(cuò)誤的程序!但在VB.NET中,這種狀況已經(jīng)大為改觀。現(xiàn)在,我們利用VB.NET處理多線(xiàn)程和利用JAVA處理多線(xiàn)程一樣簡(jiǎn)單了。下面我們就舉個(gè)例子,來(lái)看看VB.NET開(kāi)發(fā)多線(xiàn)程吧!
下面是多線(xiàn)程程序threadtest.vb的代碼:
- imports System
- imports System.Threading
- public class AClass
- public sub Method1()
- Dim i as integer
- For i = 1 to 100
- Console.Writeline("這是類(lèi)AClass方法method1的內(nèi)容",i)
- next
- end sub
- public sub Method2()
- Dim i as integer
- For i = 1 to 100
- Console.Writeline("這是類(lèi)AClass方法method2的內(nèi)容",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方法里的內(nèi)容",i)
- Next
- end sub
- end class
現(xiàn)在,來(lái)讓我們剖析一下上面的例子:
1.我們創(chuàng)建了我們自己的類(lèi)AClass,并創(chuàng)建了兩個(gè)方法:Method1和Method2。
2.這兩個(gè)方法很簡(jiǎn)單,只有一個(gè)For循環(huán),向輸出設(shè)備輸出一些信息。
3.我們還定義了另外一個(gè)類(lèi)ThreadTest來(lái)使用上面創(chuàng)建的類(lèi)AClass。
4.在Main()方法中,我們創(chuàng)建了類(lèi)Thread的實(shí)例。
5.類(lèi)Thread可以在System.Threading名字空間里得到,它定義了處理線(xiàn)程的屬性和方法。
6.在類(lèi)Thread的構(gòu)造器中,我們使用了類(lèi)ThreadStart,類(lèi)ThreadStart是一個(gè)代表,標(biāo)志著當(dāng)一個(gè)線(xiàn)程開(kāi)始時(shí)就開(kāi)始執(zhí)行定義的方法。
7.為了執(zhí)行定義的方法,我們實(shí)際調(diào)用的是線(xiàn)程的Start()方法。
8.用VBC來(lái)編譯上面的程序:vbc /out:threadtest.exe threadtest.vb
9.運(yùn)行編譯后的程序,我們將會(huì)看到我們定義的兩個(gè)方法和main()方法的混合輸出,這就說(shuō)明每一個(gè)方法都在自己的線(xiàn)程下運(yùn)行。
10.除了上面的方法,線(xiàn)程還有下面常用的方法:
◆Stop():停止線(xiàn)程的運(yùn)行。
◆Suspend():暫停線(xiàn)程的運(yùn)行。
◆Resume():繼續(xù)線(xiàn)程的運(yùn)行。
◆Sleep():停止線(xiàn)程一段時(shí)間(單位為毫秒)。
本文名稱(chēng):詳細(xì)描述VB.NET開(kāi)發(fā)多線(xiàn)程
文章出自:http://m.5511xx.com/article/dppcigj.html


咨詢(xún)
建站咨詢(xún)
