簡單回答:
創(chuàng)新互聯(lián)是一家專注于網(wǎng)站建設(shè)、做網(wǎng)站與策劃設(shè)計(jì),嘉魚網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:嘉魚等地區(qū)。嘉魚做網(wǎng)站價(jià)格咨詢:13518219792
1、當(dāng)前來說,編程與運(yùn)行環(huán)境合適的情況下,VB.net與VB都有實(shí)現(xiàn)多線程的可能。
2、VB、VB.net的最基本的概念,是調(diào)用系統(tǒng)的接口進(jìn)行編程,只要系統(tǒng)提供“多線程”的功能調(diào)用,它們就能實(shí)現(xiàn)多線程。
3、VB注意于面向用戶,面向任務(wù),其高級的一些程序?qū)崿F(xiàn)需要直接調(diào)用win的API,VB實(shí)現(xiàn)多線程的例子也可以在網(wǎng)絡(luò)上搜索到。
一、關(guān)于VB、VB.net的相關(guān)知識:
1、編程指的是用人類能理解的語言來編寫指令集,并通過專用的編譯軟件或環(huán)境來轉(zhuǎn)化這些指令,使得這些指令能讓計(jì)算機(jī)識別,從而控制計(jì)算機(jī)做人類需要進(jìn)行的工作。
2、也就是說無論是VB.NET還是VB它們都只是“人類能理解的語言”,它們通過專用的編譯軟件或環(huán)境來轉(zhuǎn)化這些指令,進(jìn)而操作電腦。
3、進(jìn)一步特化到VB上去說。VB基于VB的運(yùn)行庫,它的運(yùn)行庫又基于win的API((Application Programming Interface,應(yīng)用程序編程接口)是一些預(yù)先定義的函數(shù)),也就是說,VB的很多(多到90%以上)的功能是直接基于調(diào)用windows提供的一些基本接口函數(shù)。
4、VB.net有什么不同呢,它基于.net運(yùn)行庫。什么 意思?這個(gè)意思就是,微軟發(fā)現(xiàn)win的API不夠用了,不好用了,就打算在windows上加裝點(diǎn)東西,讓它有更多的接口函數(shù)。但要注意的是,多數(shù)情況下,這些接口比win的API的效率要低一些。在win7及以后的版本的win中,已經(jīng)自含了.net運(yùn)行庫。
5、順便說,為什么很多人會發(fā)現(xiàn)win7的運(yùn)行速度看起來要比xp慢呢,個(gè)人認(rèn)為就是因?yàn)檎{(diào)用的是.net的接口來實(shí)現(xiàn)的,.net就是比API的慢。當(dāng)然了,.net的功能上要比xp原有的API的功能強(qiáng)。
6、VB與VB.net在語法上是非常近似的,只是因?yàn)閂isual Studio的版本不同,后期的Visual Studio已不提供簡純的VB了,注意它們的不同主要是后臺核心調(diào)用的理念上的不同。
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() //啟動多線程進(jìn)程
Application.DoEvents
Next
End Sub
你可以在timer前用if判斷網(wǎng)絡(luò)狀態(tài),
如斷開,可用
threading.Thread.Sleep(10000) ‘當(dāng)前線程掛起10秒
’可以開一個(gè)新線程去讀取脫機(jī)數(shù)據(jù)。
如連接,則繼續(xù)執(zhí)行。
補(bǔ)充:
dim i as integer
'超過100次退出,避免死循環(huán)
for i=0 to 100
try
'ping你的端口
if ‘ok
exit for
else
threading.Thread.Sleep(10000) ‘當(dāng)前線程掛起10秒
end
Catch ex As Exception
End Try
next