internal Releaser(AsyncLock toRelease) { _toRelease = toRelease; }
private AsyncLock GetLocker(string key) { if (_keyToLockers.ContainsKey(key)) return _keyToLockers[key]; lock (_locker) { if (!_keyToLockers.ContainsKey(key)) { _keyToLockers[key] = new AsyncLock(); } return _keyToLockers[key]; } }