Sdílet prostřednictvím


UdpClient.EndSend(IAsyncResult) Metoda

Definice

Ukončí asynchronní odeslání čekající na vyřízení.

public:
 int EndSend(IAsyncResult ^ asyncResult);
public int EndSend (IAsyncResult asyncResult);
member this.EndSend : IAsyncResult -> int
Public Function EndSend (asyncResult As IAsyncResult) As Integer

Parametry

asyncResult
IAsyncResult

Objekt IAsyncResult vrácený voláním BeginSendmetody .

Návraty

V případě úspěchu se počet bajtů odeslaných do UdpClient.

Výjimky

asyncResult je null.

EndSend(IAsyncResult) byla dříve volána pro asynchronní čtení.

Při pokusu o přístup k podkladovému soketu došlo k chybě.

Podkladová služba Socket byla uzavřena.

Příklady

Následující příklad kódu používá BeginSend k dokončení asynchronního odesílání požadavku serveru.

public:
    static bool isMessageSent;

    static void SendCallback(IAsyncResult^ asyncResult)
    {
        UdpClient^ udpClient = (UdpClient^)asyncResult->AsyncState;

        Console::WriteLine("number of bytes sent: {0}",
            udpClient->EndSend(asyncResult));
        isMessageSent = true;
    }
public static bool messageSent = false;

public static void SendCallback(IAsyncResult ar)
{
    UdpClient u = (UdpClient)ar.AsyncState;

    Console.WriteLine($"number of bytes sent: {u.EndSend(ar)}");
    messageSent = true;
}

Poznámky

Tato metoda blokuje, dokud operace není dokončena.

Pokud chcete tuto operaci provést synchronně, použijte metodu Send .

Platí pro