私は、WindowsCEデバイス用のCompactFramework 2.0で会社向けの比較的大規模なアプリケーションを作成しており、単一のCPUコアを使用しています。
詳細に立ち入ることなく、ソケットに関連しない作業では、最悪の場合、10個程度のスレッドが同時に実行される可能性があります。
これを念頭に置いて、私は小さなテストアプリケーション以外で初めてソケットを使用しています。この大規模なアプリケーションは、同じIPアドレス上の7つの異なるポート(明らかに誤ったIP、1.2.3.4:4000、1.2.3.4:4001、1.2.3.4:4002など)と通信する可能性があるため、7つの異なるポートを使用しますソケットオブジェクト。
Compact Framework 2、1つのCPUコア、最悪のシナリオでは約10の非ソケットスレッド、およびそれらすべての送信機能と継続的な受信(できるだけ早く処理/応答する)をプログラムするための7つのソケット。
非同期ソケットプログラミングで問題が発生するだけかどうかを検討してきました。CompactFramework2.0のデフォルトの最大スレッド数は25(コアあたり)であり、基本的にどれだけ「賢い」ものにする必要があります。
あなたの推薦は何ですか?非同期または同期ソケットプログラミング、およびあなたが提案する特定の追加の詳細、または私が何も心配していない場合。