C#でTCPIPソケットの受信バッファサイズを判断する方法はありますか。私はサーバーにメッセージを送信していて、受信バッファーサイズがわからないところで応答を期待しています。ソケット受信バッファサイズ
IPEndPoint ipep = new IPEndPoint(IPAddress.Parse("192.125.125.226"),20060);
Socket server = new Socket(AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);
server.Connect(ipep);
String OutStr= "49|50|48|48|224|48|129|1|0|0|128|0|0|0|0|0|4|0|0|32|49|50";
byte[] temp = OutStr.Split('|').Select(s => byte.Parse(s)).ToArray();
int byteCount = server.Send(temp);
byte[] bytes = new byte[255];
int res=0;
res = server.Receive(bytes);
return Encoding.UTF8.GetString(bytes);
終了文字がないため、受信バイトが終了するまでループするなどの方法はありません。 – Kanishka
@ Kanishkaは通常、最高のパフォーマンスを得るために複数のシステムページサイズを使用します。 http://msdn.microsoft.com/en-us/library/ms724958(v=vs.85).aspx –
@Kanishka:うん、ここを見てくださいhttp://msdn.microsoft.com/en-us/library /8s4y8aff.aspx。 'Remarks'セクションで処理するのを待っているデータがあるかどうかを判断するために、Socket.Receiveの使い方の概要を説明します。 – sashang