Bagikan melalui


UdpClient.EndSend(IAsyncResult) Metode

Definisi

Mengakhiri pengiriman asinkron yang tertunda.

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

Parameter

asyncResult
IAsyncResult

Objek IAsyncResult yang dikembalikan oleh panggilan ke BeginSend.

Mengembalikan

Jika berhasil, jumlah byte yang dikirim ke UdpClient.

Pengecualian

asyncResultadalah null.

asyncResult tidak dikembalikan oleh panggilan ke BeginSend(Byte[], Int32, Int32, SocketFlags, AsyncCallback, Object) metode .

EndSend(IAsyncResult) sebelumnya dipanggil untuk pembacaan asinkron.

Terjadi kesalahan saat mencoba mengakses soket yang mendasar.

Yang mendasar Socket telah ditutup.

Contoh

Contoh kode berikut menggunakan BeginSend untuk menyelesaikan pengiriman asinkron permintaan server.

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;
}

Keterangan

Metode ini memblokir hingga operasi selesai.

Untuk melakukan operasi ini secara sinkron, gunakan Send metode .

Berlaku untuk