让我们说我的Activity有一个包含东西的列表对象。此活动从几个AsyncTasks开始。当这些任务完成后,他们会在postExecute()方法中修改此列表(例如在其中添加内容)。这个列表应该是线程安全的吗?
我敢打赌,这不是必要的,因为postExecute()方法中的代码是按顺序在UI线程中运行的。因此他们无法并行修改列表。这是对的吗?
答案 0 :(得分:2)
是的,你是对的。 postExecute()
在UI线程中执行,因此所有AsyncTasks将按顺序(而不是同时)更新列表。
在其他情况下,我建议您查看Java synchronizedList
的{{1}}。