摘要: volatile的特性: volatile的内存语义及实现: 在JMM中,线程之间的通信采用共享内存来实现的。volatile内存语义是: 当写一个volatile变量时,JMM会把该线程对应的本地内存中的共享变量值立即刷新到主内存中; 当读一个volatile变量时,JMM会把该线程对应的本地内存 阅读全文
posted @ 2018-11-20 17:47 胡金水 阅读(3983) 评论(0) 推荐(1) 编辑
摘要: synchronized和lock的区别: 1、以获取锁的线程执行完同步代码,释放锁 2、线程执行发生异常,jvm会让线程释放锁 假设A线程获得锁,B线程等待, 如果A线程阻塞,B线程会一直等待 分情况而定,lock有多个锁获取的方法,可以尝试获得锁, 线程可以不用功一直等待 synchronize 阅读全文
posted @ 2018-11-20 17:22 胡金水 阅读(4606) 评论(0) 推荐(0) 编辑