protected override void OnDispose() { foreach (var browser in browsers) { browser.Value.Dispose(); } browsers.Dispose(); browsers.Clear(); browsers = null; // do your IDispose-actions here. It is called right after disposables got disposed }
private void Start() { var rd = new ReactiveDictionary <string, string>(); //要素が増えた時の通知を購読 rd.ObserveAdd() .Subscribe((DictionaryAddEvent <string, string> a) => { Debug.Log($"[{a.Key}]に{a.Value}が追加されました"); }); //要素が削除された時の通知を購読 rd.ObserveRemove() .Subscribe((DictionaryRemoveEvent <string, string> r) => { Debug.Log($"[{r.Key}]の{r.Value}が削除されました"); }); //要素が更新された時の通知を購読 rd.ObserveReplace() .Subscribe((DictionaryReplaceEvent <string, string> r) => { Debug.Log($"[{r.Key}]の{r.OldValue}が{r.NewValue}に更新されました"); }); //要素数の変化の通知を購読 rd.ObserveCountChanged() .Subscribe((int c) => { Debug.Log("要素数が" + c + "になりました"); }); //Add rd["Apple"] = "りんご"; rd["Banana"] = "バナナ"; rd["Lemon"] = "レモン"; //Replace rd["Apple"] = "林檎"; //Remove rd.Remove("Banana"); // Dispose()時に各Observableに // OnCompletedメッセージが発行される rd.Dispose(); }