Java 使用独立线程加载数组
我已经编写了一个speedlimit应用程序,它从一组表示0.05度地图的平铺xml文件加载数据 目前,该应用程序检查我是否已移动到一个新的方块(使用OnLocationChanged),如果是,则加载该方块和周围其他8个方块的数据。(进行了一点合理性检查,仅加载新方块的数据,因此通常只加载另外3个方块的数据) 无论如何,它目前在UI线程上执行此操作,因此在移动到新的方块时会有一个明显的停顿,我想使用Asynctask将其移到后台(出于显示目的,它还会加载位图映射,我已经将代码移到Asynctask中,所以我知道如何执行此操作) 我的问题是检查用于速度限制的数组(实际上使用ArrayList),而Asynctask可能在后台添加(以及在将来的版本中进行减法)Java 使用独立线程加载数组,java,android,Java,Android,我已经编写了一个speedlimit应用程序,它从一组表示0.05度地图的平铺xml文件加载数据 目前,该应用程序检查我是否已移动到一个新的方块(使用OnLocationChanged),如果是,则加载该方块和周围其他8个方块的数据。(进行了一点合理性检查,仅加载新方块的数据,因此通常只加载另外3个方块的数据) 无论如何,它目前在UI线程上执行此操作,因此在移动到新的方块时会有一个明显的停顿,我想使用Asynctask将其移到后台(出于显示目的,它还会加载位图映射,我已经将代码移到Asyncta
我想知道是否有一种“专业的”:)处理这种情况的方法。同步访问应该处理所有并发访问ArrayList的问题。只用
synchronized(myArrayList) {
// update/read/modifiy
}
在异步任务和用户界面中
很好的资源是谢谢-你有没有关于android synchronized的更多信息的链接?Google搜索android synchronized并没有让我走多远:(synchronized不是android特有的,它是一个普通的java功能。编辑了我的答案…天哪,它满是星星!)