安卓在主线程操作数据库,会在执行动画的时候出现卡顿,所以想异步操作数据库,有什么线程问题吗?
多线程操作数据库没有问题,一般本地数据库数据较多的时候也是推荐在子线程中运行的,以免卡顿界面。当然诸如上面的回答,多线程操作数据库时如果同时处理同一张表的话会抛出异常,不会进行锁定的,需要自行实现锁的机制。另外题主如果在数据量不太多就出现了卡顿的现象的话建议优化数据库工具,或者使用一些类似GreenDAO之类工具提高运行效率。
3 回答975 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
1 回答846 阅读✓ 已解决
2 回答959 阅读
2 回答895 阅读
1 回答833 阅读
2 回答702 阅读
老生常谈的原子锁问题。。
我不太清楚安卓带的这个sqlite会不会自带锁,或者是直接抛出异常。
你可以实现一个数据操作队列,或者自己实现锁的机制,就可以了。