Socket.EndReceiveMessageFrom Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mengakhiri pembacaan asinkron yang tertunda dari titik akhir tertentu. Metode ini juga mengungkapkan informasi lebih lanjut tentang paket daripada EndReceiveFrom(IAsyncResult, EndPoint).
public:
int EndReceiveMessageFrom(IAsyncResult ^ asyncResult, System::Net::Sockets::SocketFlags % socketFlags, System::Net::EndPoint ^ % endPoint, [Runtime::InteropServices::Out] System::Net::Sockets::IPPacketInformation % ipPacketInformation);
public int EndReceiveMessageFrom (IAsyncResult asyncResult, ref System.Net.Sockets.SocketFlags socketFlags, ref System.Net.EndPoint endPoint, out System.Net.Sockets.IPPacketInformation ipPacketInformation);
member this.EndReceiveMessageFrom : IAsyncResult * SocketFlags * EndPoint * IPPacketInformation -> int
Public Function EndReceiveMessageFrom (asyncResult As IAsyncResult, ByRef socketFlags As SocketFlags, ByRef endPoint As EndPoint, ByRef ipPacketInformation As IPPacketInformation) As Integer
Parameter
- asyncResult
- IAsyncResult
Yang IAsyncResult menyimpan informasi status dan data yang ditentukan pengguna untuk operasi asinkron ini.
- socketFlags
- SocketFlags
Kombinasi bitwise dari SocketFlags nilai untuk paket yang diterima.
- ipPacketInformation
- IPPacketInformation
Antarmuka IPAddress dan paket yang diterima.
Mengembalikan
Jika berhasil, jumlah byte yang diterima. Jika tidak berhasil, mengembalikan 0.
Pengecualian
asyncResult
tidak dikembalikan oleh panggilan ke BeginReceiveMessageFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object) metode .
EndReceiveMessageFrom(IAsyncResult, SocketFlags, EndPoint, IPPacketInformation) sebelumnya dipanggil untuk pembacaan asinkron.
.NET Framework, .NET Core, dan .NET 5-6 saja: Socket telah ditutup.
Keterangan
Penting
Ini adalah API kompatibilitas. Kami tidak merekomendasikan penggunaan metode APM (Begin*
dan End*
) untuk pengembangan baru. Sebagai gantinya Task
, gunakan setara berbasis.
EndReceiveFrom menyelesaikan operasi yang dimulai oleh BeginReceiveFrom. Anda perlu meneruskan yang IAsyncResult dibuat oleh panggilan yang BeginReceiveFrom cocok. EndReceiveFrom akan memblokir utas panggilan hingga operasi selesai.
Periksa ipPacketInformation
apakah Anda perlu mengetahui apakah datagram dikirim menggunakan alamat unicast, multicast, atau siaran.
Catatan
Jika Anda menerima SocketException, gunakan SocketException.ErrorCode properti untuk mendapatkan kode kesalahan tertentu.