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

◆ RegisterToCancelPendingIO()

unsafe void System.Net.Sockets.SocketAsyncEventArgs.RegisterToCancelPendingIO ( NativeOverlapped * overlapped,
CancellationToken cancellationToken )
inlineprivateinherited

Definition at line 1036 of file SocketAsyncEventArgs.cs.

1037 {
1040 {
1042 SafeSocketHandle safeHandle = socketAsyncEventArgs._currentSocket.SafeHandle;
1043 if (!safeHandle.IsClosed)
1044 {
1045 try
1046 {
1047 bool flag = global::Interop.Kernel32.CancelIoEx(safeHandle, socketAsyncEventArgs._pendingOverlappedForCancellation);
1048 if (System.Net.NetEventSource.Log.IsEnabled())
1049 {
1050 System.Net.NetEventSource.Info(socketAsyncEventArgs, flag ? "Socket operation canceled." : $"CancelIoEx failed with error '{Marshal.GetLastWin32Error()}'.", "RegisterToCancelPendingIO");
1051 }
1052 }
1053 catch (ObjectDisposedException)
1054 {
1055 }
1056 }
1057 }, this);
1058 }
static readonly System.Net.NetEventSource Log
static void Info(object thisOrContextObject, FormattableString formattableString=null, [CallerMemberName] string memberName=null)
CancellationTokenRegistration _registrationToCancelPendingIO
unsafe NativeOverlapped * _pendingOverlappedForCancellation

References System.Net.Sockets.SocketAsyncEventArgs.SocketAsyncEventArgs(), System.Net.Sockets.SocketAsyncEventArgs._pendingOverlappedForCancellation, System.Net.Sockets.SocketAsyncEventArgs._registrationToCancelPendingIO, System.cancellationToken, System.Net.NetEventSource.Info(), System.Net.NetEventSource.Log, and System.s.

Referenced by System.Net.Sockets.SocketAsyncEventArgs.ProcessIOCPResultWithDeferredAsyncHandling().