private void GiveBack(ResourceLease <TResource> lease) { lock (_syncRoot) { _stack.Push(lease.Resource); if (_stack.Count == 1) { Monitor.PulseAll(_syncRoot); } } }
private void GiveBack(ResourceLease <TResource> lease) { _stack.Push(lease.Resource); _semaphore.Release(); }