terraria-cpp2il-methodrecon v1.4.4.9
Terraria mobile dump, with reconstructed method body. Dump with CallAnalysis: https://infinitynichto.github.io/terraria-cpp2il
Loading...
Searching...
No Matches

◆ ReleaseHandle()

override bool System.Net.Sockets.SafeSocketHandle.ReleaseHandle ( )
inlineprotected

Definition at line 27 of file SafeSocketHandle.cs.

28 {
29 int num = 1;
30 IntPtr handle = this.handle;
31 if (num == 0)
32 {
33 }
34 IntPtr handle2 = this.handle;
35 int num2 = 2;
37 long num8;
38 if (list != null)
39 {
40 Monitor.Enter(list, num2 != 0);
41 int num3 = 1;
42 int size = this.blocking_threads._size;
45 if (size == 0)
46 {
47 }
48 long num4 = 0L;
49 int num5 = 15;
50 if (num4 != 0L)
51 {
52 throw new OutOfMemoryException();
53 }
54 if (num5 == 0)
55 {
57 this.in_cleanup = num3 != 0;
58 int num6 = 100;
59 return Monitor.Wait(list3, num6);
60 }
61 long num7 = 0L;
62 num8 = 0L;
63 StringBuilder stringBuilder;
64 Monitor.Exit(stringBuilder);
65 if (num7 != 0L)
66 {
67 throw new OutOfMemoryException();
68 }
69 }
70 Socket.Close_icall(this.handle, (int)num8);
71 if (false)
72 {
73 throw new OutOfMemoryException();
74 }
75 long num9 = 0L;
76 long num10;
78 if (num9 == 0L)
79 {
80 }
81 throw new OutOfMemoryException();
82 }
class f__AnonymousType0<< Count > j__TPar
static bool Wait(object obj, int millisecondsTimeout, bool exitContext)
Definition Monitor.cs:64
static void Exit(object obj)
Definition Monitor.cs:47
static void Enter(object obj)
Definition Monitor.cs:11
static Thread CurrentThread
Definition Thread.cs:381

References System.Collections.Generic.List< T >._size, System.Net.Sockets.SafeSocketHandle.blocking_threads, System.Net.Sockets.Socket.Close_icall(), System.Threading.Thread.CurrentThread, System.Threading.Monitor.Enter(), System.Threading.Monitor.Exit(), System.Runtime.InteropServices.SafeHandle.handle, j__TPar, System.L, System.list, and System.Threading.Monitor.Wait().