Aracılığıyla paylaş


Socket.EndReceiveMessageFrom Yöntem

Tanım

Belirli bir uç noktadan bekleyen zaman uyumsuz okumayı sonlandırır. Bu yöntem, paketi hakkında değerinden EndReceiveFrom(IAsyncResult, EndPoint)daha fazla bilgi de gösterir.

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

Parametreler

asyncResult
IAsyncResult

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

socketFlags
SocketFlags

Alınan paket için değerlerin SocketFlags bit düzeyinde birleşimi.

endPoint
EndPoint

Kaynağı EndPoint.

ipPacketInformation
IPPacketInformation

IPAddress Alınan paketin ve arabirimi.

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

-veya-

endPoint, null değeridir.

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

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öntemlerini kullanmanızı ö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 gerekirIAsyncResult. EndReceiveFrom işlem tamamlanana kadar çağıran iş parçacığını engeller.

Veri biriminin tek noktaya yayın, çok noktaya yayın veya yayın adresi kullanılarak gönderilip gönderilmediğini bilmeniz gerekip gerekmediğini inceleyin ipPacketInformation .

Not

bir alırsanız, belirli bir SocketExceptionhata kodunu almak için özelliğini kullanın SocketException.ErrorCode .

Şunlara uygulanır