看板 C_Sharp 關於我們 聯絡資訊
小弟我不常寫用到多Thread的程式 只會用.Net3.5 ThreadPool,AutoResetEvent,WaitHandle去處理一些 同時執行多條Thread 等待所有執行完之後繼續跑程式之類的基本應用 但有一個應用想不到該如何寫 舉例來說就像是ftp軟體10個檔同時上傳 設定一次同時只能上傳5個檔, 撒下去的10個檔就在那排隊 五個處理序有一個做完了, 馬上接著下一個開始處理這樣 我常用的方式只能一次五個一起上傳,但也要五個都結束才會續跑 簡單來說就是排程控制的概念 有高手可以提示一下方向嗎 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.230.209.7 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1491128043.A.3D2.html
ssccg: 開有5個thread的pool然後把10個工作都排進去就可以了 04/02 18:23
Litfal: Semaphore 04/02 21:48
感謝.. 我用threadpool.setmaxthreads 但沒用 改Semaphore就可以了. 但Semaphore沒辦法用在ThreadPool.QueueUserWorkItem? ※ 編輯: void0 (36.230.209.7), 04/03/2017 10:07:28
Litfal: 如果有升上NF4.0的打算,可以試TaskFactory和TaskScheduler 04/04 17:41