1

Windows Server 2003/2008 および C++ プログラミングでの IOCP を理解しているので、選択の代わりに複数のソケットにサービスを提供するか、複数のスレッドを結び付けてそれらの要求にサービスを提供するための、多かれ少なかれ最高のパフォーマンスの方法です。

ただし、私のプログラムにソケットが 1 つしかなく、他の制約が与えられた場合、通常は 1 つのパケットを読み取り、動作してから別のパケットを待機すると、IOCP で何かが得られますか?

この特定のケースでは高速ではないにしても、recv() または同等のものに座っているだけで少なくとも同じくらい高速になるように感じますか?

4

2 に答える 2

3

いいえ、あなたの場合、IOCP の余分な複雑さは保証されません。少なくとも、近い将来、プログラムがより洗練されたものになると予想しない限り、そうではありません...

于 2010-09-29T01:02:51.497 に答える
2

いいえ、そのような状況では、IOCP によって複雑さが増すことはほとんどありません。もちろん、すでに IOCP に精通しており、この単一接続システムに使用できる作業コードを既に持っている場合は、IOCP を使用しない本当の理由はありませんが、以前に使用したことがない場合は、努力する価値はありません。あなたが説明するようなシステムのためにそれを学ぶために。

于 2010-09-29T06:36:43.113 に答える