摘要: 场景描述 1.有两个对象锁A1、A2 2.两个线程t1、t2 3.t1的执行顺序是A1-->A2, t2的执行顺序是A2-->A1 4.出现状态 t1持有 A1 锁,等待 A2 锁; t2 持有 A2 锁,等待 A1 锁 5.出现死锁 检查死锁方法:使用jps查看线程pid,用jstack pid查 阅读全文
posted @ 2019-12-18 14:46 龙宇在天 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 概念 synchronized 是 Java 中的关键字,是利用锁的机制来实现同步的。 锁机制有如下两种特性: 互斥性:即在同一时间只允许一个线程持有某个对象锁,通过这种特性来实现多线程中的协调机制,这样在同一时间只有一个线程对需同步的代码块(复合操作)进行访问。互斥性我们也往往称为操作的原子性。 阅读全文
posted @ 2019-12-18 10:26 龙宇在天 阅读(1384) 评论(0) 推荐(0) 编辑
摘要: 使用synchronized(object)实现线程安全 测试代码 使用synchronized给方法签名加锁实现线程安全 使用synchronized(this)实现线程安全 使用synchronized加锁的时候尽量减小加锁部分代码的粒度,在保证必要的数据安全前提下减少程序执行时间 阅读全文
posted @ 2019-12-18 08:26 龙宇在天 阅读(248) 评论(0) 推荐(0) 编辑
//右侧添加目录 //增加页面点击显示24字社会主义核心价值观