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
SafeSocketHandle.cs
Go to the documentation of this file.
1using System;
4using System.Text;
7
8namespace System.Net.Sockets
9{
10 // Token: 0x02000309 RID: 777
12 {
13 // Token: 0x06001441 RID: 5185 RVA: 0x0003DD44 File Offset: 0x0003BF44
16 {
18 if (!true)
19 {
20 }
21 if (true)
22 {
23 }
24 }
25
26 // Token: 0x06001442 RID: 5186 RVA: 0x0003DD68 File Offset: 0x0003BF68
27 protected override bool ReleaseHandle()
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 }
83
84 // Token: 0x06001443 RID: 5187 RVA: 0x0003DE8C File Offset: 0x0003C08C
86 {
87 if (this.blocking_threads == null)
88 {
89 }
90 base.DangerousAddRef(true);
91 }
92
93 // Token: 0x06001444 RID: 5188 RVA: 0x0003DEAC File Offset: 0x0003C0AC
95 {
101 if (this.in_cleanup)
102 {
104 int size = list4._size;
105 if (size == 0)
106 {
108 long num = 0L;
109 if (size != 0)
110 {
112 }
113 if (num == 0L)
114 {
115 return;
116 }
117 throw new OutOfMemoryException();
118 }
119 }
120 }
121
122 // Token: 0x06001445 RID: 5189 RVA: 0x0003DF44 File Offset: 0x0003C144
123 // Note: this type is marked as 'beforefieldinit'.
125 {
126 bool flag = Environment.GetEnvironmentVariable("MONO_TESTS_IN_PROGRESS") == "yes";
127 }
128
129 // Token: 0x040010E1 RID: 4321
131
132 // Token: 0x040010E2 RID: 4322
134
135 // Token: 0x040010E3 RID: 4323
136 private bool in_cleanup;
137
138 // Token: 0x040010E4 RID: 4324
139 private static bool THROW_ON_ABORT_RETRIES;
140 }
141}
class f__AnonymousType0<< Count > j__TPar
static string GetEnvironmentVariable(string variable)
SafeSocketHandle(IntPtr preexistingHandle, bool ownsHandle)
Dictionary< Thread, StackTrace > threads_stacktraces
static void Close_icall(IntPtr socket, [Out] int error)
Definition Socket.cs:1715
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 void Pulse(object obj)
Definition Monitor.cs:85
static Thread CurrentThread
Definition Thread.cs:381