Fork me on GitHub
摘要: 上一节已经讲到,使用Synchronzied代码块可以解决共享对象的竞争问题,其实还有其他的方法也可以避免资源竞争问题,我统称他们为Java同步块。Java 同步块(synchronized block)用来标记方法或者代码块是同步的,可以避免资源竞争,避免死锁。。 Java 同步关键字(synch 阅读全文
posted @ 2018-09-17 22:08 JackpotHan 阅读(478) 评论(0) 推荐(0)
摘要: 前面我们已经介绍了:当对象和变量存储到计算机的各个内存区域时,必然会遇到的两个问题及解决方法 共享对象的可见性-- 解决方法:使用java volatile关键字 共享对象的竞争现象 -- 解决方法:使用java synchronized代码块 那么,volatile和 synchronized有什 阅读全文
posted @ 2018-09-17 21:49 JackpotHan 阅读(288) 评论(0) 推荐(1)
摘要: Java内存模型 前面讲到了Java线程之间的通信采用的是共享内存模型,这里提到的共享内存模型指的就是Java内存模型(简称JMM),JMM决定一个线程对共享变量的写入何时对另一个线程可见。从抽象的角度来看,JMM定义了线程和主内存之间的抽象关系:线程之间的共享变量存储在主内存(main memor 阅读全文
posted @ 2018-09-17 17:56 JackpotHan 阅读(301) 评论(0) 推荐(0)