AsyncTasks и потокобезопасные объекты данных? - PullRequest
3 голосов
/ 08 февраля 2011

Допустим, моя активность имеет объект списка, содержащий вещи.Это действие начинается с нескольких AsyncTasks.Когда эти задачи завершаются, они изменяют этот список (например, добавляют в него материал) в своих методах postExecute ().Должен ли этот список быть потокобезопасным?

Могу поспорить, что он не является обязательным, поскольку код в методах postExecute () выполняется в потоке пользовательского интерфейса последовательноТаким образом, они не могут изменять список параллельно.Это правильно?

1 Ответ

2 голосов
/ 08 февраля 2011

Да, вы правы. postExecute() выполняется в потоке пользовательского интерфейса, поэтому все ваши AsyncTasks будут обновлять ваш список последовательно (а не одновременно).

В других ситуациях я бы посоветовал вам взглянуть на synchronizedList Java Collections.

...