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

◆ ReceiveFromAsync()

ValueTask< SocketReceiveFromResult > System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ReceiveFromAsync ( Socket socket,
CancellationToken cancellationToken )
inline

Definition at line 144 of file Socket.cs.

145 {
146 if (socket.ReceiveFromAsync(this, cancellationToken))
147 {
150 }
151 int bytesTransferred = base.BytesTransferred;
152 EndPoint remoteEndPoint = base.RemoteEndPoint;
153 SocketError socketError = base.SocketError;
154 Release();
155 if (socketError != 0)
156 {
157 return ValueTask.FromException<SocketReceiveFromResult>(CreateException(socketError));
158 }
159 SocketReceiveFromResult result = default(SocketReceiveFromResult);
160 result.ReceivedBytes = bytesTransferred;
161 result.RemoteEndPoint = remoteEndPoint;
162 return new ValueTask<SocketReceiveFromResult>(result);
163 }
Exception CreateException(SocketError error, bool forAsyncThrow=true)
Definition Socket.cs:503
static ValueTask FromException(Exception exception)
Definition ValueTask.cs:190

References System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs._cancellationToken, System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs._token, System.cancellationToken, System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.CreateException(), System.Threading.Tasks.ValueTask< TResult >.FromException(), and System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.Release().