鉴于大家对ASP.net十分关注,我们编辑小组在此为大家搜集整理了“VB.NET多线程实例”一文,供大家参考学习
在VB 6.0中,如果想实现多线程功能则必须使用Win32 API调用,但是这种调用经常会引发一些不可预知的错误。而VB.NET支持自由线程的应用,.NET SDK中包含的System.Threading名字空间专门负责实现多线程功能,而且操作相当简单,只需要利用System.Threading名字空间中的Thread类,就具有了实现自由线程的属性和方法。例如:
简单的多线程程序
Imports System
t引入线程名字空间
Imports System.Threading
Public Class clsMultiThreading
’在类clsMultiThreading中创建一个简单的方法,循环lO次
Public Sub OwnThread()
Dim intCounter as integer
For intCounter=1 to 10
Console·WriteLine(”Inside the class:”&intCounter.ToString())
Next
End Sub
End C1ass
Public ClasS TestThreading工nVB
’当此程序运行的时候上述定义的方法被执行
PubliC Shared Sub Main()
Dim intCounter as integer
Dim objMT as clsMultiThreading=new clsMultiThreadinq()
Dim obj NewThread as Thread
objNewThread。new Thread(new ThreadStart(AddressOf objMT.OwnThread))
obj NewThread.Start()
-执行循环和显示信息
For intCounter=10 to 15
Console·WriteLine(”Inside the Sub Main:”&intCounter.ToString())
Next
End Sub
End C1asS
上述代码的一开始是引入名字空间System和System.Threading,然后创建一个公共类clsMultiThreading。这个类中包含一个公共方法OwnThreadO,它执行了10次for循环,每次都在屏幕上显示信息。创建这个类的目的是为了以单个线程的方式从其他类中调用OwnThread()方法。接着,创建另外一个类TestThreadinglnVB,它包含一个方法Main()。当最后生成的可执行文件运行时,将启动Main()。在方法Main()中,创建了一个类clsMultiThreading的实例,这样就可以调用它的方法OwnThread0-j"。这样,通过传递方法OwnThread0的地址方式创建了线程类实例,实际上等于创建了一个新的线程,并且告知线程运行时要执行的方法。