Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私は現在、TCPソケットでリッスンして送信するプログラムを持っています。
私が抱えている問題は、私がパケットを送信し、時々それがバラバラになることです。したがって、私のリスニングTCPソケットクラスは、最初に入るのはペイロード全体であると考えています。
TCP接続でプログラミングするときに人々が取る典型的なアプローチは何ですか?
最初の部分がペイロード全体であると想定することはできません。すべてを取得するまで、ソケットを読み続ける必要があります。
2つのオプションがあります。
オプション1 メッセージ(データ構造)の終わりをマークします。その後、リスナーはメッセージの終わりマーカーを取得するまで読み続けます。
オプション2 実際のデータを送信する前に、メッセージの長さまたはデータ構造を送信します。その後、リスナーはすべてのバイトを読み取るまで読み取りを続けます。