public bool TryAcquire() { int currentCount = (int)Interlocked.Increment(ref count); if (currentCount > NumberOfPermits.Value) { Interlocked.Decrement(ref count); return false; } else { return true; } }