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

◆ Add()

void System.Runtime.InteropServices.HandleCollector.Add ( )
inline

Definition at line 49 of file HandleCollector.cs.

50 {
51 int num = -1;
53 if (_handleCount < 0)
54 {
56 }
58 {
59 lock (this)
60 {
62 num = _gcGeneration;
63 if (_gcGeneration < 2)
64 {
66 }
67 }
68 }
69 if (num >= 0 && (num == 0 || _gcCounts[num] == GC.CollectionCount(num)))
70 {
71 GC.Collect(num);
72 Thread.Sleep(10 * num);
73 }
74 for (int i = 1; i < 3; i++)
75 {
76 _gcCounts[i] = GC.CollectionCount(i);
77 }
78 }
static string InvalidOperation_HCCountOverflow
Definition SR.cs:14
Definition SR.cs:7
static int Increment(ref int location)
static void Sleep(int millisecondsTimeout)
Definition Thread.cs:658

References System.Runtime.InteropServices.HandleCollector._gcCounts, System.Runtime.InteropServices.HandleCollector._gcGeneration, System.Runtime.InteropServices.HandleCollector._handleCount, System.Runtime.InteropServices.HandleCollector._threshold, System.GC.Collect(), System.GC.CollectionCount(), System.Threading.Interlocked.Increment(), System.SR.InvalidOperation_HCCountOverflow, and System.Threading.Thread.Sleep().