public IDisposable RegisterDisconnectAction(Action<int, string> action) { lock (disconnectActions) { disconnectActions.Add(action); } return new Subscription(this, action); }