AsyncTasks和线程安全的数据对象?

时间:2011-02-08 13:38:11

标签: android thread-safety android-asynctask

让我们说我的Activity有一个包含东西的列表对象。此活动从几个AsyncTasks开始。当这些任务完成后,他们会在postExecute()方法中修改此列表(例如在其中添加内容)。这个列表应该是线程安全的吗?

我敢打赌,这不是必要的,因为postExecute()方法中的代码是按顺序在UI线程中运行的。因此他们无法并行修改列表。这是对的吗?

1 个答案:

答案 0 :(得分:2)

是的,你是对的。 postExecute()在UI线程中执行,因此所有AsyncTasks将按顺序(而不是同时)更新列表。

在其他情况下,我建议您查看Java synchronizedList的{​​{1}}。