Socket.EndReceiveFrom(IAsyncResult, EndPoint) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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.
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
değeridir.
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ı.
.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 öğesini IAsyncResult geçirmeniz gerekir.
EndReceiveFrom yöntemi, veriler kullanılabilir olana kadar engeller. Bağlantısız bir protokol kullanıyorsanız, EndReceiveFrom gelen ağ arabelleğinde bulunan ilk sıralanmış veri birimi okunur. Bağlantı odaklı bir protokol kullanıyorsanız yöntem, yöntemin EndReceiveFrom parametresinde size
BeginReceiveFrom belirttiğiniz bayt sayısına kadar kullanılabilir olan kadar veri okur. Uzak ana bilgisayar yöntemiyle Shutdown bağlantıyı kapatırsa Socket ve tüm kullanılabilir veriler alınmışsa, 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.
Not
bir alırsanız, belirli bir SocketExceptionhata kodunu almak için özelliğini kullanın SocketException.ErrorCode .
Not
Uygulamanızda ağ izlemeyi etkinleştirdiğinizde, bu üye izleme bilgilerini çıkarır. Daha fazla bilgi için bkz. .NET Framework'da Ağ İzleme.