public void Subscribe(Observable <T> observable) { //lock (SyncObject) //{ if (observable == null || observable.IsDisposed || this.IsDisposed) { return; } Unsubscriber <T> unsub = observable.Subscribe(this) as Unsubscriber <T>; if (unsub != null) { m_DictObservables.TryAdd(observable, unsub); } // } }
public void Subscribe(Observable <T> observable) { if (observable == null || observable.IsDisposed || this.IsDisposed) { return; } if (m_DictObservables.Count == 0) { MessageQueue.ResetStart(); } Unsubscriber <T> unsub = observable.Subscribe(this) as Unsubscriber <T>; if (unsub != null) { m_DictObservables.TryAdd(observable, unsub); } }
protected override void CleanupUnmanagedResources() { base.CleanupUnmanagedResources(); m_Unsubscriber = null; }