UdpClient.EndReceive メソッド
アセンブリ: System (system.dll 内)

Public Function EndReceive ( _ asyncResult As IAsyncResult, _ ByRef remoteEP As IPEndPoint _ ) As Byte()
Dim instance As UdpClient Dim asyncResult As IAsyncResult Dim remoteEP As IPEndPoint Dim returnValue As Byte() returnValue = instance.EndReceive(asyncResult, remoteEP)
戻り値
正常に完了した場合は、受信したバイト数。失敗した場合、このメソッドは 0 を返します。



BeginSend を使用して、サーバーからの応答の非同期受信を完了するコード例を次に示します。
public static bool messageReceived = false; public static void ReceiveCallback(IAsyncResult ar) { UdpClient u = (UdpClient)((UdpState)(ar.AsyncState)).u; IPEndPoint e = (IPEndPoint)((UdpState)(ar.AsyncState)).e; Byte[] receiveBytes = u.EndReceive(ar, ref e); string receiveString = Encoding.ASCII.GetString(receiveBytes); Console.WriteLine("Received: {0}", receiveString); messageReceived = true; } public static void ReceiveMessages() { // Receive a message and write it to the console. IPEndPoint e = new IPEndPoint(IPAddress.Any, listenPort); UdpClient u = new UdpClient(e); UdpState s = new UdpState(); s.e = e; s.u = u; Console.WriteLine("listening for messages"); u.BeginReceive(new AsyncCallback(ReceiveCallback), s); // Do some work while we wait for a message. For this example, // we'll just sleep while (!messageReceived) { Thread.Sleep(100); } }
public: static bool isMessageReceived; static void ReceiveCallback(IAsyncResult^ asyncResult) { UdpClient^ udpClient = ((UdpState)(asyncResult->AsyncState)).udpClient; IPEndPoint^ ipEndPoint = ((UdpState)(asyncResult->AsyncState)).ipEndPoint; array<Byte>^ receiveBytes = udpClient->EndReceive(asyncResult, ipEndPoint); String^ receiveString = Encoding::ASCII->GetString(receiveBytes); Console::WriteLine("Received: {0}", receiveString); isMessageReceived = true; } static void ReceiveMessages() { // Receive a message and write it to the console. IPEndPoint^ ipEndPoint = gcnew IPEndPoint(IPAddress::Any, listenPort); UdpClient^ udpClient = gcnew UdpClient(ipEndPoint); UdpState^ udpState = gcnew UdpState(); udpState->ipEndPoint = ipEndPoint; udpState->udpClient = udpClient; Console::WriteLine("listening for messages"); udpClient->BeginReceive(gcnew AsyncCallback(ReceiveCallback), udpState); // Do some work while we wait for a message. For this example , // we'll just sleep while (!isMessageReceived) { Thread::Sleep(100); } }

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からUdpClient.EndReceive メソッドを検索する場合は、下記のリンクをクリックしてください。

- UdpClient.EndReceive メソッドのページへのリンク