线程的栈本地变量私有拷贝

私有拷贝

如果两个线程 同时调用了 同一个对象objec3的方法的成员变量时 实际上 这两个线程栈是同时拥有了这两个obeject3成员变量的

私有拷贝

 每个线程都有一个本地内存(用于存放共享变量的副本)

两个线程间的通信
线程A必须将本地的私有变量的更新 刷新的主内存当中
线程B到主内存中去读取线程A中已更新过的共享变量
这就会造成 count++ 在多个线程访问时不准确 你从主内存拿的值不是最新的
两个线程间的数据 是不可见的 因此计数就出现了错误

线程间的同步

Lock unlock 一个变量用于一个线程独占 然后释放
Read 读取 把一个变量从主内存当中传输到工作内存中,以便随后的load使用
Load ,把主内存变量 放入工作内存的变量副本当中
Use 使用
Assign
Store 存储 把工作内存中的变量传送到主内存中
Write 写到主内存

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值