下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江经贸职业技术学院多线程Java语言程序设计Unit11主讲吕丽华11.4.1多线程问题11.4.3线程死锁问题11.4.4volatile字段11.4线程同步11.4.2synchronized关键字11.4.5CountDownLatch字段11.4.4volatile字段volatile用来确保将变量的更新操作通知到其他线程,保证了新值能立即同步到主内存,以及每次使用前立即从主内存刷新。volatile相当于synchronized的弱实现,也就是说volatile实现了类似synchronized的语义,却又没有锁机制。11.4.4volatile字段互斥(mutualexclusion)可见性(visibility)12锁的主要特性互斥即一次只允许一个线程持有某个特定的锁,因此可使用该特性实现对共享数据的协调访问协议,这样,一次就只有一个线程能够使用该共享数据。可见性要更加复杂一些,它必须确保释放锁之前对共享数据做出的更改对于随后获得该锁的另一个线程是可见的--如果没有同步机制提供的这种可见性保证,线程看到的共享变量可能是修改前的值或不一致的值,这将引发许多严重问题。11.4.4volatile字段volatile包含以下语义:(1)Java存储模型不会对valatile指令的操作进行重排序:这个保证对volatile变量的操作时按照指令的出现顺序执行的。(2)volatile变量不会被缓存在寄存器中(只有拥有线程可见)或者其他对CPU不可见的地方,每次总是从主存中读取volatile变量的结果。也就是说对于volatile变量的修改,其它线程总是可见的,并且不是使用自己线程栈内部的变量。也就是在happens-before法则中,对一个valatile变量的写操作后,其后的任何读操作理解可见此写操作的结果。尽管volatile变量的特性不错,但是volatile并不能保证线程安全的,也就是说volatile字段的操作不是原子性的,volatile变量只能保证可
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 创业题库试题与详细答案
- ISO27001-2022 信息安全体系标准测试题及答案
- 关于袋鼠的考试题目与答案
- 四年级语文下册 第七单元 口语交际:自我介绍教学设计 新人教版
- 实验室制CO2教学设计
- 西医臁疮试题及答案详解
- 小学三年级下册综合实践活动《纽扣掉了自己缝》劳动技能教学设计
- 小学四年级科学《空气能占据空间吗》探究式教学设计
- 初中七年级地理《地球与地球仪》教学设计
- 初中七年级地理《印度:世界人口大国与热带季风气候》教学设计
- 藏医霍尔麦疗法
- 适老化居家环境设计与改造(第二版)教学标准
- 间质性膀胱炎诊疗规范
- 居民健康档案死亡档案管理制度
- 2025年广东省第一次普通高中学业水平合格性考试(春季高考)语文试题(含答案详解)
- 2025年12月6日黑龙江省高级人民法院遴选加试真题及答案解析
- 构成基础知识总结
- GB/T 18015.5-2025数字通信用对绞或星绞多芯对称电缆第5部分:具有1 000 MHz及以下传输特性的对绞或星绞对称电缆水平层布线电缆分规范
- 2025年西学中培训结业考试卷带答案
- 露天矿桥吊式提升运输系统的设计思路与实际应用潜力
- 学校食堂安全汇报
评论
0/150
提交评论