Java内存模型

  1. Java 内存模型试图屏蔽各种硬件和操作系统的内存访问差异,以实现让 Java 程序在各种平台下都能达到一致的内存访问效果

  2. 我们把一个或者多个操作在 CPU 执行的过程中不被中断的特性称为原子性
    可以理解为在特定的操作协议下,对特定的内存或高速缓存进行读写访问的过程抽象

  3. 可见性、有序性和原子性是并发编程里三个重要的原则,Java的内存模型就是用来解决可见性和有序性,规范了jvm如何按需进行缓存禁用和编译优化的方法,使用sychronized volatile final等关键字以及六项happens-before原则,
    volatile关键字表示禁用缓存直接从内存中读取数据,在jdk1.5后得到优化,与happens-before原则结合起来
    happens-before原则:前一个操作的结果必须对后一个操作可见

  1. 程序前面某个变量的修改一定对后面操作可见,符合我们对单线程的思维
  2. volatile变量规则
  3. 传递性
  4. 管程中的锁规则
  5. start()
  6. join()

final的作用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值