NetworkStream の上で BinaryReader を使用して、ネットワークからデータを読み取っています。これは私にとっては非常にうまく機能しましたが、舞台裏で何が起こっているのかを理解したいので、BinaryReader のドキュメントを調べたところ、非常にまばらであることがわかりました。
私の質問は次のとおりです:を呼び出したときにネットワーク ストリームにバイトが存在しないBinaryReader.ReadBytes(bufferSize)
場合はどうなりますか?bufferSize
ReadBytes
私の考えでは、いくつかのオプションがあります:
1)ネットワークストリームに存在するバイトを読み取り、その数だけを返す
2)ストリームにバイトが存在するまで待ってからbufferSize
読み取る
3)例外をスローする
例外を受け取ったことがなく、すべてのデータが断片ではなく完全に受信されるため、オプション 2 が発生していると思います。ただし、何が起こっているのかを確実に知りたいです。誰かが私を啓発することができれば、私は感謝します.