0

RecyclerView にビューがあります。そして、onBindViewHolder() メソッドで myView.post(runnable) を呼び出して、レイアウト パスの終了後に myView に関する情報を収集します。ランナブルが開始する前にホスト アクティビティが何らかの形で破壊された場合、アプリケーションがクラッシュするリスクはありますか?

4

1 に答える 1

0

一般的には安全です。ただし、onDestroy がリソースを解放したり、Runnable が依存する変数を無効にしたりすると、まれなケースに遭遇する可能性があります。ほとんどの場合、私はそれについて心配することはありません。Runnable はアクティビティへの参照を保持し、Runnable が実行されるまでガベージ コレクションが行われないようにするため、finalize() の後に呼び出すことはできません。それは本当の問題ですが、フレームワーク/言語がそれを防ぎます。

于 2016-07-19T17:27:42.257 に答える