多线程面试题(二)

1.volatile关键字 2.悲观锁和乐观锁 悲观锁: 以最坏的打算来上锁,总是假设最坏的情况,认为自己的数据一定会被别的线程修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁.传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。Java中synchronized和ReentrantLock等独占锁就是悲观锁思想的实现
相关文章
相关标签/搜索