public RedisWaitKeyManager(ISubscriber subscriber, int timeout, RedisWaitKeyManager instance) { _subscriber = subscriber; _timeout = timeout; _waitKeyManager = instance._waitKeyManager; subscriber.Subscribe(Channel, releaseKey); }
public static RedisWaitKeyManager Instance(ISubscriber subscriber) { lock (Lock) { if (_instance == null) { _instance = new RedisWaitKeyManager(subscriber, 20 * 1000); } if (!_instance.IsConnected) { _instance = new RedisWaitKeyManager(subscriber, 20 * 1000, _instance); } return(_instance); } }