重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本篇文章为大家展示了如何深入理解Java多线程与并发框中的volatile关键字,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
成都创新互联公司服务紧随时代发展步伐,进行技术革新和技术进步,经过10多年的发展和积累,已经汇集了一批资深网站策划师、设计师、专业的网站实施团队以及高素质售后服务人员,并且完全形成了一套成熟的业务流程,能够完全依照客户要求对网站进行成都网站制作、成都网站设计、建设、维护、更新和改版,实现客户网站对外宣传展示的首要目的,并为客户企业品牌互联网化提供全面的解决方案。
把对 volatile变量的单个读/写,看成是使用 同一个监视器锁 对这些单个读/写操作做了 同步。 原理:插入内存屏蔽指令,禁止一定条件下的重排序。
volatile 是轻量级的同步机制
举例说明:
public class Assignment { int value = 1; /** * 加法 */ public void assign1() { value = 1; // 单操作 } public void assign2() { value = 2; // 单操作 } }
volatile禁止指令重排序也有一些规则,简单列举一下**(重点是存在多操作)**:
当第二个操作是voaltile写时,无论第一个操作是什么,都不能进行重排序
当地一个操作是volatile读时,不管第二个操作是什么,都不能进行重排序
当第一个操作是volatile写时,第二个操作是volatile读时,不能进行重排序
上述内容就是如何深入理解Java多线程与并发框中的volatile关键字,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。