Bagikan melalui


Socket.EndReceiveMessageFrom Metode

Definisi

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.

endPoint
EndPoint

Sumber EndPoint.

ipPacketInformation
IPPacketInformation

Antarmuka IPAddress dan paket yang diterima.

Mengembalikan

Jika berhasil, jumlah byte yang diterima. Jika tidak berhasil, mengembalikan 0.

Pengecualian

asyncResult is null

-atau-

endPointadalah null.

Terjadi kesalahan saat mencoba mengakses soket.

-atau-

Hanya .NET 7+: Socket telah ditutup.

.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.

Berlaku untuk