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

◆ CloseAsIs()

void System.Net.Sockets.SafeSocketHandle.CloseAsIs ( bool abortive)
inlinepackage

Definition at line 83 of file SafeSocketHandle.cs.

84 {
85 bool flag = TryOwnClose();
86 if (System.Net.NetEventSource.Log.IsEnabled())
87 {
88 System.Net.NetEventSource.Info(this, $"shouldClose={flag}", "CloseAsIs");
89 }
90 Dispose();
91 if (flag)
92 {
93 bool flag2 = false;
94 SpinWait spinWait = default(SpinWait);
95 while (!_released)
96 {
97 flag2 |= TryUnblockSocket(abortive);
98 spinWait.SpinOnce();
99 }
100 CloseHandle(abortive, flag2);
101 }
102 }
static readonly System.Net.NetEventSource Log
static void Info(object thisOrContextObject, FormattableString formattableString=null, [CallerMemberName] string memberName=null)
unsafe bool TryUnblockSocket(bool abortive)
bool CloseHandle(bool abortive, bool canceledOperations)

References System.Net.Sockets.SafeSocketHandle._released, System.Net.Sockets.SafeSocketHandle.CloseHandle(), System.Runtime.InteropServices.SafeHandle.Dispose(), System.Net.NetEventSource.Info(), System.Net.NetEventSource.Log, System.Threading.SpinWait.SpinOnce(), System.Net.Sockets.SafeSocketHandle.TryOwnClose(), and System.Net.Sockets.SafeSocketHandle.TryUnblockSocket().

Referenced by System.Net.Sockets.SafeSocketHandle.GetOrAllocateThreadPoolBoundHandle().