這個沒法做到。原因
創新互聯公司公司2013年成立,是專業互聯網技術服務公司,擁有項目成都網站設計、成都網站建設網站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元浉河做網站,已為上家服務,為浉河各地企業和個人服務,聯系電話:13518219792
1)當你將方法排入線程池隊列后,此方法在有線程池線程變得可用時執行。
2)線程池中某個線程的可用與不可用,是由.net 后臺決定,用戶程序無法控制的
3)正如你觀察到的:線程啟動的時間不同,有快有慢,這恰恰說明線程池起作用了:線程池的調度試圖讓程序響應達到最佳。
我告訴你思路,你自己去實現。
建議你用“守護線程”的方式去做,這樣做對于你一個小任務來說更合適。首先,你要建立一個隊列,將所有下載任務放入隊列。注意,這個隊列必須是“線程安全”的,即兩個線程不會搶到同一個任務。然后只開10個線程。這些線程會從隊列中讀取任務。當一個線程不能再從隊列中讀取任務時,也就是隊列為空時,退出。等所有線程都退出后,你的程序就結束了。
還有一種方法,叫“線程池”,也就是你說的方法,稍微復雜一點:
指定一個變量,用來表示線程的數量。剛開始為0,每開一個線程+1。當一個線程完成任務退出后,這個變量-1。直到所有任務都完成后,不再產生新線程。
這個沒法做到。原因
1)當你將方法排入線程池隊列后,此方法在有線程池線程變得可用時執行。
2)線程池中某個線程的可用與不可用,是由.net 后臺決定,用戶程序無法控制的
3)正如你觀察到的:線程啟動的時間不同,有快有慢,這恰恰說明線程池起作用了:線程池的調度試圖讓程序響應達到最佳。
文章題目:vb.net線程池管理 vbnet 多線程
本文網址:http://m.2m8n56k.cn/article14/dojhige.html
成都網站建設公司_創新互聯,為您提供品牌網站制作、、微信公眾號、建站公司、網站建設、域名注冊
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯