private async Task DecrementCounterAsync() { Interlocked.Decrement(ref _workingTasks); await _semaphoreSlim.WaitAsync(); _throttle.SetResult(true); _semaphoreSlim.Release(); }