Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ReceiveMessageFromAsync() [4/4]

bool System.Net.Sockets.Socket.ReceiveMessageFromAsync ( SocketAsyncEventArgs e,
CancellationToken cancellationToken )
inlineprivate

Definition at line 3070 of file Socket.cs.

3071 {
3073 if (e == null)
3074 {
3075 throw new ArgumentNullException("e");
3076 }
3077 if (e.RemoteEndPoint == null)
3078 {
3079 throw new ArgumentException(System.SR.Format(System.SR.InvalidNullArgument, "e.RemoteEndPoint"), "e");
3080 }
3081 if (!CanTryAddressFamily(e.RemoteEndPoint.AddressFamily))
3082 {
3083 throw new ArgumentException(System.SR.Format(System.SR.net_InvalidEndPointAddressFamily, e.RemoteEndPoint.AddressFamily, _addressFamily), "e");
3084 }
3085 SocketPal.CheckDualModeReceiveSupport(this);
3086 EndPoint remoteEP = e.RemoteEndPoint;
3087 e._socketAddress = Serialize(ref remoteEP);
3088 e.RemoteEndPoint = remoteEP;
3090 e.StartOperationCommon(this, SocketAsyncOperation.ReceiveMessageFrom);
3091 SocketError socketError;
3092 try
3093 {
3094 socketError = e.DoOperationReceiveMessageFrom(this, _handle, cancellationToken);
3095 }
3096 catch
3097 {
3098 e.Complete();
3099 throw;
3100 }
3101 return socketError == SocketError.IOPending;
3102 }
System.Net.Internals.SocketAddress Serialize(ref EndPoint remoteEP)
Definition Socket.cs:3225
void SetReceivingPacketInformation()
Definition Socket.cs:3450
SafeSocketHandle _handle
Definition Socket.cs:533
AddressFamily _addressFamily
Definition Socket.cs:555
bool CanTryAddressFamily(AddressFamily family)
Definition Socket.cs:1159
static string InvalidNullArgument
Definition SR.cs:86
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
static string net_InvalidEndPointAddressFamily
Definition SR.cs:38
Definition SR.cs:7

References System.Net.Sockets.Socket._addressFamily, System.Net.Sockets.Socket._handle, System.Net.EndPoint.AddressFamily, System.cancellationToken, System.Net.Sockets.Socket.CanTryAddressFamily(), System.Net.Sockets.SocketPal.CheckDualModeReceiveSupport(), System.Net.Sockets.SocketAsyncEventArgs.Complete(), System.Net.Sockets.SocketAsyncEventArgs.DoOperationReceiveMessageFrom(), System.SR.Format(), System.SR.InvalidNullArgument, System.SR.net_InvalidEndPointAddressFamily, System.Net.Sockets.SocketAsyncEventArgs.RemoteEndPoint, System.Net.Sockets.Socket.Serialize(), System.Net.Sockets.Socket.SetReceivingPacketInformation(), System.Net.Sockets.SocketAsyncEventArgs.StartOperationCommon(), and System.Net.Sockets.Socket.ThrowIfDisposed().