ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

115云盘资源从哪买

2020-02-03 15:02:00  阅读:171  来源: 互联网

标签:缓存 Java 变量 synchronized 云盘 115 volatile 线程 资源


volatile的应用

在多线程并发编程中 synchronized 和 volatile 都扮演着重要的角色,volatile 是一个轻量级的 synchronized ,它在多处理器开发中保证了共享变量的 可见性。可见性的意思是当一个线程修改一个共享变量的时候,另一个线程能读取到这个共享变量被修改后的值。如果 volatile 使用恰当的话,它比 synchronized的使用和执行成本更低,因为volatile不会引起线程上下文的切换和调度

 

volatile的定义与实现原理

Java编程语言允许线程访问共享变量,为了确保共享变量能被准确和一致性地更新,线程应该确保通过排他锁来单独获取这个变量。Java提供的volatile在某些情况下比锁要方便。如果一个字段被声明为volatile,那么Java模型确保所有的线程看到这个变量的值是一致的

 

volatile的两条实现原则

Lock前缀指令会引起处理器缓存回写到内存

一个处理器的缓存回写到内存会导致其他的处理器的缓存无效

synchronized

synchronized关键字可以修饰方法或者以同步块的形式来进行使用,它主要确保多个线程在同一个时刻,只能有一个线程处于方法或者同步块中,它保证了线程对变量访问的可见性和排他性

 

synchronized的实现原理与应用

在多线程并发编程中 synchronized 一直是元老级的角色,很多人都会直呼它为重量级锁。但是,随着Java SE 1.6对 synchronized进行了各种优化之后,有些情况下synchronized并没有那么重了

标签:缓存,Java,变量,synchronized,云盘,115,volatile,线程,资源
来源: https://www.cnblogs.com/jebixbw/p/12255688.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有