人々、私は Web サービスを使用していくつかのニュース項目をダウンロードする非同期タスクを持っています。これがその疑似です。
asynctask で実行する操作があります。Web サービスからいくつかのニュースをダウンロードします。
AsyncTask
{
AsyncTask(Context context){}
doInBackground()
{
// download some news
..
..
return List<News>
}
onpostExecute(List <News>)
{
is the activity around ? if yes then
//find the list using context ,and populate it with news
}
}
私の質問は、デバイスが方向付けられている場合、操作中に新しい AsyncTask が発生することです。すでに進行中の古いものには、内部 List があります。
それはガベージコレクションになりますか?. 私はそれがないと思います。この状況に弱参照が適用されているという概念のにおいがしますが、ここで自分の鼻を信用することはできません。
また、weakreferences によって、この Async を生成したアクティビティがもう存在しないことを onPostExecute 内で知ることができます。しかし 。私はまだ多くのことを見逃していると信じています。
または、これは私が心配する必要はなく、リストは asynctask が終了すると自動的にガベージコレクションされますか?