Windowsデスクトップアプリから別のPC上のサーバー上のWindowsサービスに送信するバイト配列の長さはさまざまです。C# でソケットを使用しています。私が考えていたのは、送信するバイト数を計算し、その情報だけをサーバーに送信することでした。サーバー アプリは、受信バッファ サイズを調整して、クライアントからそのサーバーに送信されるバイト配列に対応します。アプリの進行に合わせて受信バッファを動的に変更するのは悪い考えですか、それとも良い考えですか?
ありがとう
受信側のバッファ サイズの役割は、ネットワークが送信できるレートよりもアプリケーションのデータの読み取り速度が遅い場合に、パケットをバッファリングすることです。また、送信者がデータをバーストで送信する場合にも役立ちます。したがって、複数の MTU (10/20) の倍数として維持することで十分です。私の理解が正しければ、送信したいデータ セット全体 (バイト配列の長さ) を通信しようとしていて、受信側のバッファーを同じサイズにしようとしています。これは確かに必要ではなく、送信したいデータが大きすぎます!非効率的な理由は、OS が受信バッファーにそれだけ多くのメモリを割り当てる必要があるためです。