2008-10-21 2 views
3

UdpClient, Send() 바로 다음에 Receive()가 작동하지 않습니다?

다음 코드를 고려하십시오.

client.Send(data, data.Length, endpoint); 
byte[] response = client.Receive(ref endpoint); 
WireShark (네트워크 스니퍼)에 따르면 원격 호스트는 데이터로 응답합니다. 여기서 응용 프로그램은 데이터를 영원히 기다립니다 ... 응답을받지 못합니다. 어떤 이유로 원격 호스트.

어떤 아이디어?

+2

당신이 전화하고 있습니까 예외가 그래서

client.Client.ReceiveTimeout = 5000; 

을 설정 보낼 수있는 다음 방화벽이 client.Connect()? 그렇다면 Connect 메서드에서 제공 한 enpoint의 데이터 만 받아들입니다. –

답변

5

두 개의 UdpClient를 설치하려고합니다. 하나는 수신 대기 용이고 다른 하나는 전송 용입니다.

받는 UdpClient의 경우 포트를 사용하는 생성자를 사용하십시오.

+0

나는 그것을 할 것이다, 고마워. – TimothyP

1

아마 원격 호스트하지 응답이 이전 요청 요청이 응답이 요청을 가져올 수 없습니다 때