悲观锁:每次线程取数据时,都会悲观的认为在取数据的过程中,其他线程都会对该数据进行更新操作,因此每次取数据都要加锁。 如synchronized就是一个悲观锁。
乐观锁:每次取数据时,都乐观的认为在取数据的过程中,没有其他线程对该数据进行更新操作。但是在更新的时候总会去判断有没有其他线程在这之前对数据进行了更新操作
悲观锁:每次线程取数据时,都会悲观的认为在取数据的过程中,其他线程都会对该数据进行更新操作,因此每次取数据都要加锁。 如synchronized就是一个悲观锁。
乐观锁:每次取数据时,都乐观的认为在取数据的过程中,没有其他线程对该数据进行更新操作。但是在更新的时候总会去判断有没有其他线程在这之前对数据进行了更新操作