public RepositoryCacheUpgradeableLock(Guid repositoryId, ReaderWriterLockSlim cacheLock, int timeOut) : base(repositoryId, cacheLock) { if (!CacheLock.TryEnterUpgradeableReadLock(timeOut)) { ThrowTimeoutException("upgradeable read"); } _timeOut = timeOut; }