NetworkStreamからTCP受信データを読み取る際、受信途中であった場合、掲題のBinaryReader.ReadBytesメソッドは処理をブロックしますか?
C#
1var listener = TcpListener(selfHostName, receivePort); 2listener.Start(); 3try 4{ 5 using (var sender = listener.AcceptTcpClient()) 6 using (var receivedStream = sender.GetStream()) 7 using (var reader = new BinaryReader(receivedStream)) 8 { 9 // ここで 10byte のデータが送られてくる想定。 10 // もしここの処理に入った瞬間にまだ 10byte 未満(4byteとか)しか送られてきていない(送信途中)の場合、 11 // 10byte 目が送られてくるまでブロックされますか? 12 var readData = reader.ReadBytes(10); 13 } 14} 15finally 16{ 17 listener.Stop(); 18}
よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。