新聞中心
關(guān)于VB的多線程問題,是單線程快還是多線程快?知道的請將結(jié)果發(fā)至QQ1653073865。
不管單線程 還是多線程,都是CPU執(zhí)行,而 CPU一個(gè)核只能執(zhí)行一個(gè)線程。

10年積累的網(wǎng)站設(shè)計(jì)、做網(wǎng)站經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先建設(shè)網(wǎng)站后付款的網(wǎng)站建設(shè)流程,更有番禺免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
也就是說,如果電腦是多核CPU可能多線程快, 如果是單核,那么就是單線程快
這里的快事 CPU滿負(fù)荷運(yùn)行, 如要是處理網(wǎng)絡(luò)任務(wù) ,需要延時(shí)等待 ,多線程跟好
VB.NET 多線程簡化步驟問題
過程只需要1個(gè),線程你要多少就需要?jiǎng)?chuàng)建多少,這個(gè)可以用循環(huán)來創(chuàng)建:
Dim Thd(99) As Thread
For i As Integer =0 to 99
Thd(i)=New Thread(AddressOf Start)
Thd(i).Start()
Next
如果你不需要保留這些線程的引用
那個(gè)數(shù)組也可以省略掉
直接在循環(huán)中(New Thread(AddressOf Start)).Start()就行了
---------------------------------------------------------------------------
代碼不是在IDE中打的,可能有細(xì)微小錯(cuò)誤
vb.net 多線程操作
將循環(huán)放入到另一個(gè)線程中
ThreadStart ts = new ThreadStart(delegate() {
//do something
});
Thread t = new Thread(ts);
t.Start();
//going do something
怎么在vb.net里用多線程縮短循環(huán)時(shí)間
多線程并不一定就可以縮短時(shí)間,具體要看你上面的“過程”是否調(diào)用數(shù)據(jù)庫完成。如果調(diào)用了數(shù)據(jù)庫,可以考慮用存儲過程替代“過程”。另外看看“過程”里是否反復(fù)打開和關(guān)閉了數(shù)據(jù)庫連接,如果是,這才是真正的耗時(shí)動作。如果沒調(diào)用數(shù)據(jù)庫,可以考慮使用Parallel類(.net4以后)里面的函數(shù),使多個(gè)任務(wù)在多核CPU上并行運(yùn)行,縮短時(shí)間。
當(dāng)前文章:vb.net多核運(yùn)算 vbnet timer多線程
網(wǎng)頁網(wǎng)址:http://m.biofuelwatch.net/article/doggsgd.html


咨詢
建站咨詢
