如题, 使用java语言,sqlite数据如何解决多线程同步锁的问题
http://www.cnblogs.com/linjiqin/p/3208843.html
这个问题问的有点不好回答,只要牵扯到多个线程同时修改同一条数据的时候都应该考虑同步,或加锁,只是大部分锁操作由数据库本身解决了,解决不了可以通过java同步实现
用JVM内置锁,或者第三方的锁。
这个sqlite数据库我没用过 但是java加锁 大多情况都是synchronize
一般代码业务同步锁 和数据库无关
数据库的数据锁 有自己的锁
java上的锁 和用什么数据库是没有关系的
在访问数据时加上同步锁,确保每次数据都被刷新过缓存后在释放锁,数据库自己也有锁,这个可以用数据源来统一调制。
如果在同一个JVM内部加synchronize关键字就可以了。
如果不在同一个JVM,需要加分布式锁,
1、redis的分布式锁
2、Zookeeper的分布式锁