悲观锁的思想对线程并发持悲观态度,使用互斥锁的机制来解决并发问题;
乐观锁的思想是使用CAS(compareAndSwapper)机制,不上锁,但也能解决并发问题;
举例说明:
int count = 100;
最后一次修改的时间戳或者版本号;
1、先查询一下变量的值以及它的最后一次修改的时间戳;
2、在本地修改变量的值;
3、对变量进行修改的时候,先对比一下最后一次修改的时间戳是否发生变化了,如果没发生变化,修改变量的值,如果变化了,重复以上流程;
悲观锁的思想对线程并发持悲观态度,使用互斥锁的机制来解决并发问题;
乐观锁的思想是使用CAS(compareAndSwapper)机制,不上锁,但也能解决并发问题;
举例说明:
int count = 100;
最后一次修改的时间戳或者版本号;
1、先查询一下变量的值以及它的最后一次修改的时间戳;
2、在本地修改变量的值;
3、对变量进行修改的时候,先对比一下最后一次修改的时间戳是否发生变化了,如果没发生变化,修改变量的值,如果变化了,重复以上流程;