BeginReceive/EndReceive を使用してソケット IO を処理している場合、コールバックは IOCP スレッドによって呼び出されます。
受信が完了したら、データを処理する必要があります。
- コールバックの呼び出しスレッドでそれを行う必要がありますか?
- または、ThreadPool.QueueUserWorkItem を使用してタスクを実行する必要があります
通常、サンプルはコールバック スレッドで作業を行いますが、これは少し混乱します。
数百のアクティブな接続を扱っている場合、IOCP スレッドで処理を実行すると、数百のスレッドを持つプロセスになります。ThreadPool は同時スレッドの数を制限するのに役立ちますか?