zoukankan      html  css  js  c++  java
  • Java的内存模型与Volatile

    java的内存模型分为线程工作区内存、线程执行引擎、主内存(共享内存)三部分;
    
    	线程执行引擎在执行时,对内存有使用和赋值操作
    	当线程使用(use)变量时,会触发线程工作区的加载(load)操作,线程工作区的加载(load)操作会触发主内存的读操作(read)
    	当线程对变量赋值(assgin)时,会触发线程工作区的存储(store)操作,线程工作区的存储(store)会触主内存的write操作。
    
    	主内存的锁(lock)和解锁(unlock)是使线获取或释放内存的独占锁。
    
    	long和double在读和写时会当成2个32来读写,因些,在使用long或double时应使用同步,另外,volatile修释的long和double变量,编译器会保证其有序性以达到其它线程的修可即时可见,同时本线程的修改其它线程也即时可见。
    
  • 相关阅读:
    本地安全策略
    windows本地用户及组的区别
    mysql基本命令总结
    常用DOS命令
    AES加密算法详解
    ctf密码学习题总结
    CTF最简单的Web题
    python进阶篇
    JNI开发流程
    JDK中的Timer和TimerTask详解
  • 原文地址:https://www.cnblogs.com/zengxianxi/p/3607884.html
Copyright © 2011-2022 走看看