ThreadPool.QueueUserWorkItemの2番目の引数には、実行するThreadFuncに渡すためのパラメータを指定できる・・・。
ThreadPool.QueueUserWorkItem メソッド (WaitCallback, Object) (System.Threading)
ワークアイテムに番号を振る・・・。
こんな感じで、1~3をパラメータとして渡す・・・。
指定したパラメータはobject型stateとして渡されるので、intに戻してこれも"["と"]"で括って出力してあげる・・・。
Main(1) ThreadFunc[1](1) Main(2) ThreadFunc[1](2) ThreadFunc[2](1) Main(3) ThreadFunc[1](3) ThreadFunc[2](2) Main(4) ThreadFunc[1](4) ThreadFunc[2](3) Main(5) ThreadFunc[1](5) ThreadFunc[3](1) ThreadFunc[2](4) ThreadFunc[3](2) ThreadFunc[2](5) ThreadFunc[3](3) ThreadFunc[3](4) ThreadFunc[3](5) 続行するには何かキーを押してください . . .
これでどのワークアイテムかわかりやすくなった・・・。
Sample/dotnet/ThreadPool/QueueUserWorkItem/src/ThreadPool_ at master · bg1bgst333/Sample · GitHub