Socket.EndReceiveMessageFrom(IAsyncResult, SocketFlags, EndPoint, IPPacketInformation) メソッド

定義

特定のエンドポイントからの、保留中の非同期読み込みを終了します。Ends a pending asynchronous read from a specific endpoint. また、このメソッドは、EndReceiveFrom(IAsyncResult, EndPoint) よりもパケットに関するより多くの情報を示します。This method also reveals more information about the packet than 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

パラメーター

asyncResult
IAsyncResult

この非同期操作の状態情報およびユーザー定義データを格納する IAsyncResultAn IAsyncResult that stores state information and any user defined data for this asynchronous operation.

socketFlags
SocketFlags

受信パケットの SocketFlags 値のビットごとの組み合わせ。A bitwise combination of the SocketFlags values for the received packet.

endPoint
EndPoint

コピー元 EndPointThe source EndPoint.

ipPacketInformation
IPPacketInformation

受信パケットの IPAddress とインターフェイス。The IPAddress and interface of the received packet.

戻り値

正常に完了した場合は、受信したバイト数。If successful, the number of bytes received. 失敗した場合は、0 を返します。If unsuccessful, returns 0.

例外

asyncResultnull ですasyncResult is null

- または --or- endPointnullです。endPoint is null.

BeginReceiveMessageFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object) メソッドへの呼び出しで asyncResult が返されませんでした。asyncResult was not returned by a call to the BeginReceiveMessageFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object) method.

EndReceiveMessageFrom(IAsyncResult, SocketFlags, EndPoint, IPPacketInformation) が、非同期の読み取りのために以前に呼び出されています。EndReceiveMessageFrom(IAsyncResult, SocketFlags, EndPoint, IPPacketInformation) was previously called for the asynchronous read.

ソケットへのアクセスを試行しているときにエラーが発生しました。An error occurred when attempting to access the socket.

Socket が閉じられました。The Socket has been closed.

注釈

操作が完了していない場合、このメソッドは、処理が完了するまでブロックします。If the operation has not completed, this method blocks until it does.

この操作を同期的に実行するには、ReceiveMessageFrom メソッドを使用します。To perform this operation synchronously, use the ReceiveMessageFrom method.

データグラムがユニキャスト、マルチキャスト、またはブロードキャストアドレスを使用して送信されたかどうかを確認する必要がある場合は、ipPacketInformation を調べます。Examine ipPacketInformation if you need to know if the datagram was sent using a unicast, multicast, or broadcast address.

適用対象