Terraria v1.4.4.9
Terraria source code documentation
All Classes Namespaces Files Functions Variables Enumerations Enumerator Properties Events Macros

◆ ReportThreadStatus()

void System.Threading.PortableThreadPool.ReportThreadStatus ( bool isProcessingUserCallback)
inline

Definition at line 1847 of file PortableThreadPool.cs.

1848 {
1849 CountsOfThreadsProcessingUserCallbacks countsOfThreadsProcessingUserCallbacks = _countsOfThreadsProcessingUserCallbacks;
1850 while (true)
1851 {
1852 CountsOfThreadsProcessingUserCallbacks newCounts = countsOfThreadsProcessingUserCallbacks;
1853 if (isProcessingUserCallback)
1854 {
1855 newCounts.IncrementCurrent();
1856 }
1857 else
1858 {
1859 newCounts.DecrementCurrent();
1860 }
1861 CountsOfThreadsProcessingUserCallbacks countsOfThreadsProcessingUserCallbacks2 = _countsOfThreadsProcessingUserCallbacks.InterlockedCompareExchange(newCounts, countsOfThreadsProcessingUserCallbacks);
1862 if (!(countsOfThreadsProcessingUserCallbacks2 == countsOfThreadsProcessingUserCallbacks))
1863 {
1864 countsOfThreadsProcessingUserCallbacks = countsOfThreadsProcessingUserCallbacks2;
1865 continue;
1866 }
1867 break;
1868 }
1869 }
CountsOfThreadsProcessingUserCallbacks _countsOfThreadsProcessingUserCallbacks
CountsOfThreadsProcessingUserCallbacks InterlockedCompareExchange(CountsOfThreadsProcessingUserCallbacks newCounts, CountsOfThreadsProcessingUserCallbacks oldCounts)

References System.Threading.PortableThreadPool._countsOfThreadsProcessingUserCallbacks, System.Threading.PortableThreadPool.CountsOfThreadsProcessingUserCallbacks.DecrementCurrent(), System.Threading.PortableThreadPool.CountsOfThreadsProcessingUserCallbacks.IncrementCurrent(), and System.Threading.PortableThreadPool.CountsOfThreadsProcessingUserCallbacks.InterlockedCompareExchange().