WangJiQing

导航

2022年12月25日 #

monitor原理

摘要: Java对象头 以32位虚拟机为例 普通对象 数组对象 mark word(32bits) 看后面两位即可区分哪种锁,无所和偏向锁需要看biased_lock的值是1还是0 工作原理 Monitor被翻译为监视器或管程 每个Java对象都可以关联一个Monitor对象,如果使用synchronize 阅读全文

posted @ 2022-12-25 12:18 如梦幻泡影 阅读(28) 评论(0) 推荐(0) 编辑

线程安全分析

摘要: 线程安全分析 成员变量和静态变量是否线程安全? 如果它们没有共享,则线程安全 如果它们被共享了,根据它们的状态是否能够改变,又分两种情况 如果只有读操作,则线程安全 如果有读写操作,则这段代码是临界区,需要考虑线程安全 例如成员变量list,被两个线程访问,并进行读写操作,没有措施导致线程不安全 p 阅读全文

posted @ 2022-12-25 12:16 如梦幻泡影 阅读(20) 评论(0) 推荐(0) 编辑

买票&转账问题

摘要: 买票&转账问题 1、买票问题 现象 模拟2200人来买票,总票数为2000张票。出现线程安全问题:卖票超过总票数 public class ExerciseSell { public static void main(String[] args) { //卖票窗口,有2000张票 TicketWin 阅读全文

posted @ 2022-12-25 12:14 如梦幻泡影 阅读(24) 评论(0) 推荐(0) 编辑