Aracılığıyla paylaş


Socket.EndReceiveFrom(IAsyncResult, EndPoint) Yöntem

Tanım

Belirli bir uç noktadan bekleyen zaman uyumsuz okumayı sonlandırır.

public:
 int EndReceiveFrom(IAsyncResult ^ asyncResult, System::Net::EndPoint ^ % endPoint);
public int EndReceiveFrom(IAsyncResult asyncResult, ref System.Net.EndPoint endPoint);
member this.EndReceiveFrom : IAsyncResult * EndPoint -> int
Public Function EndReceiveFrom (asyncResult As IAsyncResult, ByRef endPoint As EndPoint) As Integer

Parametreler

asyncResult
IAsyncResult

IAsyncResult Bu zaman uyumsuz işlem için durum bilgilerini ve kullanıcı tanımlı verileri depolayan bir.

endPoint
EndPoint

Kaynağı EndPoint.

Döndürülenler

Başarılı olursa, alınan bayt sayısı. Başarısız olursa 0 döndürür.

Özel durumlar

asyncResult, null'e eşittir.

asyncResult yöntemine BeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object) yapılan bir çağrı tarafından döndürülmedi.

EndReceiveFrom(IAsyncResult, EndPoint) daha önce zaman uyumsuz okuma için çağrıldı.

Yuvaya erişmeye çalışılırken bir hata oluştu.

-veya-

Yalnızca .NET 7+ : Socket kapatıldı.

Yalnızca .NET Framework, .NET Core ve .NET 5-6: Socket kapatıldı.

Açıklamalar

Önemli

Bu bir uyumluluk API'sidir. Yeni geliştirme için APM (Begin* ve End*) yöntemlerinin kullanılmasını önermiyoruz. Bunun yerine, tabanlı eşdeğerleri kullanın Task.

EndReceiveFrom tarafından BeginReceiveFrombaşlatılan işlemi tamamlar. Eşleşen BeginReceiveFrom çağrı tarafından oluşturulan geçirmeniz IAsyncResult gerekir.

EndReceiveFrom yöntemi, veriler kullanılabilir olana kadar engeller. Bağlantısız bir protokol kullanıyorsanız, EndReceiveFrom gelen ağ arabelleğinde kullanılabilen ilk sıralanmış veri birimi okunur. Bağlantı odaklı bir protokol kullanıyorsanız, EndReceiveFrom yöntemi yöntemi parametresinde sizeBeginReceiveFrom belirttiğiniz bayt sayısına kadar kullanılabilir olan kadar veri okur. Uzak konak yöntemiyle Shutdown bağlantıyı kapatırsa Socket ve kullanılabilir tüm veriler alınırsa, EndReceiveFrom yöntem hemen tamamlanır ve sıfır bayt döndürür. Alınan verileri almak için nesnesinin AsyncStateIAsyncResult yöntemini çağırın ve sonuçta elde edilen durum nesnesinde bulunan arabelleği ayıklayın. Kaynak konağı tanımlamak için öğesini ayıklayın EndPoint ve bir IPEndPointöğesine yayınlayın. IPEndPoint.Address IP adresini almak için yöntemini ve IPEndPoint.Port bağlantı noktası numarasını almak için yöntemini kullanın.

Uyarı

bir SocketExceptionalırsanız, özelliğini kullanarak SocketException.ErrorCode belirli bir hata kodunu alın.

Uyarı

Bu üye, uygulamanızda ağ izlemeyi etkinleştirdiğinizde izleme bilgilerini döndürür. Daha fazla bilgi için bkz. .NET Framework'te Ağ İzleme.

Şunlara uygulanır