基本上,我希望一次處理多個線程中的項目列表,而不是一次處理一個項目。 我只想要一次有限數量的線程。 這種方法有意義嗎?線程數是唯一選項使用全局變量嗎? (下面的僞代碼)使用多個有限數量的線程處理項目列表
foreach item in list
while thread_count >= thread_max
sleep
loop
start_thread item
thread_count++
next
function start_thread(item)
do_something_to item
thread_count--
end function
這個機制來與OSTB .NET 4.0。 :) – bzlm 2011-03-02 22:07:08
你爲什麼要控制線程的數量?通過使用[Threadpool](http://msdn.microsoft.com/en-us/library/system.threading.threadpool(v = VS.100).aspx)讓框架最優地決定。 – 2011-03-04 08:18:05
因此,我可以運行列表並在每個項目上使用QueueUserWorkItem,而不用擔心有多少個線程正在運行?游泳池會爲我管理嗎?有趣... – 2011-03-04 18:56:30