悲观锁和乐观锁

悲观锁的思想对线程并发持悲观态度,使用互斥锁的机制来解决并发问题;

乐观锁的思想是使用CAS(compareAndSwapper)机制,不上锁,但也能解决并发问题;

举例说明:

int count = 100;

最后一次修改的时间戳或者版本号;

1、先查询一下变量的值以及它的最后一次修改的时间戳;

2、在本地修改变量的值;

3、对变量进行修改的时候,先对比一下最后一次修改的时间戳是否发生变化了,如果没发生变化,修改变量的值,如果变化了,重复以上流程;

你可能感兴趣的:(java,jvm,开发语言)