java存储模型与C语言存储模型(一)

    存储模型即内存模型描述的是程序中各变量之间的关系,以及在实际操作系统中将变量存储到内存以及从内存中取出变量这样的底层细节。

一 java存储模型

    java语言采用共享内存模型(而非消息传递模型)来实现多线程之间的信息交换和数据同步。线程之间通过共享程序公共的状态,通过读-写内存中公共状态的方式来进行隐式的通信。多个线程之间是不能直接传递数据交互的,它们之间的交互只能通过共享变量来实现。同步指的是程序在控制多个线程之间执行程序的相对顺序的机制,在共享内存模型中,同步是显式的,程序员必须显式指定某个方法/代码块需要在多线程之间互斥执行。

1 运行时的数据区域(内存结构)

    Java虚拟机在执行Java程序的过程中,会把它管理的内存划分为几个不同的数据区域如下图,这些区域都有各自的用途、创建时间、销毁时间。Java运行时数据区分为下面几个内存区域:
   内存结构

1.1 PC寄存器/程序计数器

    严格来说是一个用于保存当前正在执行的程序的内存地址的数据结构ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值