并发编程
Poseidon. Wh
认认真真做事,踏踏实实做人!
展开
-
Sychronized图解锁的升级(二)
Sychronized图解锁的升级(二) Mark Work状态变化 锁的升级 在Java SE 1.6中,锁一共有4种状态,级别由低到高依次:无锁状态、偏向锁状态、轻量级锁、重量级锁。锁只能升级不能降级,目的是为了提高获得锁和释放锁的效率。 偏向锁:始终是同一个线程访问同步块 轻量级锁:没有资源竞争,多个线程交替访问同步块 重量级锁:有资源竞争,多个线程同时访问同步块 偏向锁的获得和撤销 轻量级锁及膨胀流程图 ...原创 2020-11-22 21:45:45 · 97 阅读 · 0 评论 -
Zookeeper分布式锁实现
分布式锁原理图 Code 实现 Lock.java public interface Lock { void getLock(); void unLock(); } AbstractLock.java public abstract class AbstractLock implements Lock{ @Override public void getLock() { //竞争锁 if(tryLock()){原创 2020-09-10 16:43:43 · 92 阅读 · 0 评论 -
Synchronized解析(一)
基本使用 Synchronized关键字是jdk内置的解决并发问题的锁。jdk1.6以后进行了优化,增加了偏向锁、轻量锁、重量锁。用法: 修饰普通方法 修饰静态方法 修饰代码块 举例: 修饰普通方法 public class SychMethod { public synchronized void method1(){ System.out.println("sych method1 start"); try { System.out原创 2020-09-02 20:46:44 · 115 阅读 · 0 评论