48 references to _separated
System.Private.CoreLib (48)
src\runtime\src\libraries\System.Private.CoreLib\src\System\Threading\PortableThreadPool.Blocking.cs (7)
15return Math.Min(_separated.counts.NumThreadsGoal, TargetThreadsGoalForBlockingAdjustment); 47_separated.counts.NumThreadsGoal < TargetThreadsGoalForBlockingAdjustment) 82_separated.counts.NumThreadsGoal > TargetThreadsGoalForBlockingAdjustment) 129ThreadCounts counts = _separated.counts; 149_separated.counts.InterlockedSetNumThreadsGoal(numThreadsGoal); 229counts = _separated.counts.InterlockedSetNumThreadsGoal(newNumThreadsGoal); 234if (counts.NumProcessingWork >= numThreadsGoal && _separated._hasOutstandingThreadRequest != 0)
src\runtime\src\libraries\System.Private.CoreLib\src\System\Threading\PortableThreadPool.cs (20)
165_separated.counts.NumThreadsGoal = _minThreads; 223else if (_separated.counts.NumThreadsGoal < newMinThreads) 225_separated.counts.InterlockedSetNumThreadsGoal(newMinThreads); 226if (_separated._hasOutstandingThreadRequest != 0) 297if (_separated.counts.NumThreadsGoal > newMaxThreads) 299_separated.counts.InterlockedSetNumThreadsGoal(newMaxThreads); 326ThreadCounts counts = _separated.counts.VolatileRead(); 331public int ThreadCount => _separated.counts.VolatileRead().NumExistingThreads; 370_separated.lastDispatchTime = currentTickCount; 390ThreadCounts counts = _separated.counts; 404int numCompletions = totalNumCompletions - _separated.priorCompletionCount; 412_separated.counts.InterlockedSetNumThreadsGoal((short)newNumThreadsGoal); 426_separated.priorCompletionCount = totalNumCompletions; 427_separated.nextCompletedWorkRequestsTime = currentTicks + _threadAdjustmentIntervalMs; 428Volatile.Write(ref _separated.priorCompletedWorkRequestsTime, currentTicks); 454int priorTime = Volatile.Read(ref _separated.priorCompletedWorkRequestsTime); 455uint requiredInterval = (uint)(_separated.nextCompletedWorkRequestsTime - priorTime); 469ThreadCounts counts = _separated.counts; 483if (_separated._hasOutstandingThreadRequest == 0 && 484Interlocked.Exchange(ref _separated._hasOutstandingThreadRequest, 1) == 0)
src\runtime\src\libraries\System.Private.CoreLib\src\System\Threading\PortableThreadPool.GateThread.cs (9)
135threadPoolInstance._separated._hasOutstandingThreadRequest != 0 && 151ThreadCounts counts = threadPoolInstance._separated.counts; 166threadPoolInstance._separated.counts.InterlockedCompareExchange(newCounts, counts); 190if (threadPoolInstance._separated._hasOutstandingThreadRequest == 0 && 192Interlocked.Decrement(ref threadPoolInstance._separated.gateThreadRunningState) <= GetRunningStateForNumRuns(0)) 211uint delay = (uint)(Environment.TickCount - threadPoolInstance._separated.lastDispatchTime); 219minimumDelay = (uint)threadPoolInstance._separated.counts.NumThreadsGoal * DequeueDelayThresholdMs; 230if (threadPoolInstance._separated.gateThreadRunningState != GetRunningStateForNumRuns(MaxRuns)) 239int numRunsMask = Interlocked.Exchange(ref threadPoolInstance._separated.gateThreadRunningState, GetRunningStateForNumRuns(MaxRuns));
src\runtime\src\libraries\System.Private.CoreLib\src\System\Threading\PortableThreadPool.WorkerThread.cs (12)
49(uint)ThreadPoolInstance._separated.counts.VolatileRead().NumExistingThreads); 73(uint)threadPoolInstance._separated.counts.VolatileRead().NumExistingThreads); 132if (threadPoolInstance._separated._hasOutstandingThreadRequest != 0 && 133Interlocked.Exchange(ref threadPoolInstance._separated._hasOutstandingThreadRequest, 0) != 0) 190ThreadCounts counts = threadPoolInstance._separated.counts; 211threadPoolInstance._separated.counts.InterlockedCompareExchange(newCounts, counts); 244ThreadCounts oldCounts = threadPoolInstance._separated.counts; 247if (threadPoolInstance._separated.counts.InterlockedCompareExchange(newCounts, oldCounts) == oldCounts) 268oldCounts = threadPoolInstance._separated.counts; 272if (threadPoolInstance._separated.counts.InterlockedCompareExchange(newCounts, oldCounts) == oldCounts) 306ThreadCounts counts = threadPoolInstance._separated.counts; 321ThreadCounts oldCounts = threadPoolInstance._separated.counts.InterlockedCompareExchange(newCounts, counts);