android随机崩溃并发问题

时间:2011-02-24 05:15:50

标签: android concurrency feedback crash

1 个答案:

答案 0 :(得分:3)

听起来就像项目可用时,您正在从AsyncTask中的工作线程更新列表适配器。在UI线程中遍历相同的适配器以呈现列表。这可能会导致随机崩溃,因为您可能正在为下一个项目更新列表适配器,同时它仍在响应之前的notifyDataSetChanged()

更新列表适配器的更好方法是使用处理程序将runnable发布到UI线程中,该线程将更新列表适配器并调用notifyDataSetChanged()

图像更新可能会发生类似情况。

作为一般策略,应该在UI线程上更新UI所依赖的任何数据结构。它往往更安全。另一种策略是仔细同步代码的关键部分,但要做到这一点要困难得多。