Stream.Flush 메서드를 사용하려고하지만 해당 설명서에 해당 메시지가 표시됩니다. 무슨 뜻이에요?C# VS Express : "이 방법은 향후 사용을 위해 예약되어 있습니다"- 무슨 의미입니까?
편집 : MSDN 스레드에서 해결책을 찾지 못했습니다. 내 문제는 때로는 메시지를 보내고 클라이언트의 연결이 끊어지면 메시지가 나타나지 않는다는 것입니다. 그래서 OnDisconnecing 이벤트에서 스트림이나 소켓을 플러시해야합니다.
Stream.Flush 메서드를 사용하려고하지만 해당 설명서에 해당 메시지가 표시됩니다. 무슨 뜻이에요?C# VS Express : "이 방법은 향후 사용을 위해 예약되어 있습니다"- 무슨 의미입니까?
편집 : MSDN 스레드에서 해결책을 찾지 못했습니다. 내 문제는 때로는 메시지를 보내고 클라이언트의 연결이 끊어지면 메시지가 나타나지 않는다는 것입니다. 그래서 OnDisconnecing 이벤트에서 스트림이나 소켓을 플러시해야합니다.
그들은 문서를 만들기 위해 절반의 프랑스어와 절반의 영어를 사용하는 사람을 고용 했습니까?
농담 거리, 의미 :이 방법은 나중에 사용할 수 있도록 예약되어 있습니다. refereered하는 방법은 "물건"이 일종의 spec을 따르도록 만들어졌습니다. , 그러나 그것은 단지 자리 표시 자이며 나중에 구현 될 것입니다.
NetworkStream
을 사용하는 경우 MSDN의 this thread을 방문하십시오.
네트워크 스트림을 사용하고 있습니다. 나는 메시지를 파싱하는 데 문제가 없다. 메시지를 끊기 전에 때때로 메시지를 보내는 문제가있다. Like : SendMessage (text, param) DisconectClient (클라이언트) – Thomas
글쎄, 클라이언트가 메시지를 수신했음을 확인한 다음 연결을 끊을 수 있도록 변경할 수 있습니다. – aviraldg
msg/왔어. 클라이언트에게 비밀번호 시도가 잘못되었다는 사실을 알려주는 것과 같습니다. msg를 보내고 연결을 끊습니다. 즉각적인 호출 연결 해제와 관련이 있습니다. 제거 할 때 모든 메시지가 올바르게 전달됩니다. – Thomas
기본적으로 추상 메서드 Stream.Flush()
을 구현해야한다는 것을 의미하지만, NetworkStream
의 구체적인 구현에서는 아무 것도 수행하지 않습니다. 나는 .NET 프레임 워크가 네트워크를 통해 플러시를 수행하기 위해 OS에 의존한다고 생각한다.
그래서 전화 할 필요가 없습니까? 소켓에 쓰기 때문에 버퍼링이 필요하지 않습니까? – Thomas
여전히 전화해야합니다. .NET 4.0에서 Flush가 구현되고 호출해야한다면 코드는 여전히 예상대로 작동합니다. –
아니요, 그것이 의미하는 바가 아닙니다. 즉, 현재 구현에서는 아무 것도하지 않지만 코드를 구현하고 코드를 호출해야 할 때 코드가 올바르게 작동하기 때문에 코드를 호출해야합니다. 즉, * 플러시를 호출해야하는 경우 *입니다. –