は「この処分関数はその所有するエンティティからこのコンポーネントを削除しますが、メモリリークを防ぐために、オブジェクトを自分で配置するために処分-機能をオーバーライドする必要があります。。」
はどのようにdispose関数をオーバーライドする必要があります。
は、私は3つの質問がありますか?
dispose関数を正しく使用するにはどうすればよいですか?
Flambeでメモリリークをチェックする方法はありますか?
は「この処分関数はその所有するエンティティからこのコンポーネントを削除しますが、メモリリークを防ぐために、オブジェクトを自分で配置するために処分-機能をオーバーライドする必要があります。。」
はどのようにdispose関数をオーバーライドする必要があります。
は、私は3つの質問がありますか?
dispose関数を正しく使用するにはどうすればよいですか?
Flambeでメモリリークをチェックする方法はありますか?
1あなたはComponent
を使用していない場合は、Component
override public function dispose() {
myReferences = null;
myDisposable.dispose();
super.dispose();
}
を使用している場合: あなたはDisposable
を実装し、他の処分の機能に必要なときに処分することができます。
2オブジェクトへの参照を消去する必要があります。つまり、nullに設定する必要があります。 そのコンテキストで作成された信号接続を閉じる必要があります。 Disposable
を処分する必要があります。
3 JavaScript(html)ターゲットを使用する場合は、chromeデバッグインスペクタ/ devtoolsを使用できます。あなたはメモリプロファイルを収集し、CPU使用率などを観察することができます。 https://developer.chrome.com/devtools/docs/profiles
あなたの答えをありがとう。ちょっとした質問: あなたが 'myReferences'を書いたとき、あなたはこのコンポーネントオブジェクトへの参照を意味しました、そうですか? 「myDisposable」とは何ですか? このコンポーネントを所有者から削除するには、 'super.dispose()'を呼び出します。 – Robert777
myDisposableは、Disposableインターフェイスを実装しているコンポーネントで使用されているものです。 myReferenceは、コンポーネント内で使用されている「Disposable」を実装していないオブジェクトの別の例です。 –
はい、super.dispose()は、所有者からコンポーネントを削除するので、常に行うべきです。 –