0

パーセル可能なデータは永続的ですか? などの Android ライフサイクル関数で破棄する変数がいくつかありますがonDestroy()、parcelable に書き込まれたものはどうですか?

最終的には、インテントを介してパーセル可能なオブジェクトの要素を渡したいと思いますが、ガベージ コレクション (Java または dalvik のいずれか) の後でも利用できますか?

ありがとうございました

4

1 に答える 1

2

簡単に言えば、はい。パーセル可能なデータは永続的です。

オブジェクトから Parcel を作成すると、基本的に at オブジェクトのシリアル化されたバージョンが作成されます。シリアル化されたバージョンを取得すると、オブジェクト自体をガベージ コレクションすることができ、Parcel は引き続き保持されます (そのハンドルを保持している場合、または Intent を介して送信した場合は OS がハンドルを持っていると仮定します)。 .

別の機会に、パーセルから新しいオブジェクトをインスタンス化すると、元のオブジェクトがガベージ コレクションされているかどうかに関係なく、元のオブジェクトのコピーが作成されます。

于 2012-05-14T15:26:06.207 に答える