0
소켓에서 읽는 C# 코드가 있습니다. 어떤 이유로 상대방이 응답하지 않습니다. NetworkStream.Read
메서드에서 디버거가 작동하지 않습니다. 디버거를 깰 경우 여전히 거기에 갇혀 있습니다. 전체 프로그램을 종료하지 않고 연결을 다시 설정하려고합니다. Read
을 건너 뛰도록 디버거에 지시하려면 어떻게해야합니까?디버거가 응답하지 않는 기능에서 벗어납니다.
소켓에서 읽는 C# 코드가 있습니다. 어떤 이유로 상대방이 응답하지 않습니다. NetworkStream.Read
메서드에서 디버거가 작동하지 않습니다. 디버거를 깰 경우 여전히 거기에 갇혀 있습니다. 전체 프로그램을 종료하지 않고 연결을 다시 설정하려고합니다. Read
을 건너 뛰도록 디버거에 지시하려면 어떻게해야합니까?디버거가 응답하지 않는 기능에서 벗어납니다.
읽을 때 데이터를 사용할 수 있는지 확인하고 있습니까? 예 on MSDN는 다음과 같습니다
do
{
numberOfBytesRead = myNetworkStream.Read(myReadBuffer, 0, myReadBuffer.Length);
// other stuff
}
while(myNetworkStream.DataAvailable);
내가 어떤 데이터를 사용할 수있을 경우이
가 건너 뛰어야 상상한다.
NetworkStream
에 대한 경험이 거의 없기 때문에 문제가 발생할 수도 있습니다.
그렇다면 스트림을 차단해도 응용 프로그램을 계속할 수 있도록 비 블로킹 호출을 원하는 것처럼 들립니다. (이것은 여러 가지 이유로 좋은 생각 일 것입니다.) 따라서 다른 스레드에서 스트림을 읽는 것은 길 일 것입니다. 그렇게하는 방법은 사용중인 .NET 버전에 따라 다릅니다.
서버가 바이트에 대한 요청을 받았지만 어떤 이유로 내부에서 예외가 발생하여 수신기에서 나갔습니다. 밖에서 그는 다른 연결을 기다리고 있으므로 잡았지만 클라이언트는이 읽기에 머물러 있습니다. –