千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

首页 视频教程 培训课程 师资团队 技术干货 常见问题 面试题 职场就业 零基础学Java 行业资讯
【热点话题】 Java技术干货 Java学习教程 Java学习笔记 Java面试题 Java培训问答 Java培训机构哪些好 Java职场就业
当前位置:Java培训  >  java技术干货  >  什么是Java的内存模型

什么是Java的内存模型

来源:千锋教育
发布人:wjy
时间: 2022-09-20 16:55:45 1663664145

  在了解什么是Java内存模型之前,先了解一下为什么要提出Java内存模型。

  过并发编程有三大问题:

  1. CPU缓存,在多核CPU的情况下,带来了可见性问题

  2. 操作系统对当前执行线程的切换,带来了原子性问题

  3. 译器指令重排优化,带来了有序性问题 为了解决并发编程的三大问题,提出了JSR-133,新的 Java 内存模型,JDK 5开始使用。

什么是Java的内存模型

  简单总结:

  1. Java 内存模型是 JVM 的一种规范

  2. 定义了共享内存在多线程程序中读写操作行为的规范

  3. 屏蔽了各种硬件和操作系统的访问差异,保证了Java程序在各种平台下对内存的访问效果一致

  4. 解决并发问题采用的方式:限制处理器优化和使用内存屏障

  5. 增强了三个同步原语(synchronized、volatile、final)的内存语义

  6. 定义了happens-before规则

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

最新文章NEW

相关推荐HOT

更多>>