线程安全分析

java内存模型分析:
我们都知道计算机有高速缓存的存在,并不是每次操作都是去内存中的数据;java定义了自己的内存模型,屏蔽了底层的平台内存管理细节。java内存模型(jmm)规定了jvm有主存,主内存是被线程共享的,但是每个线程有自己的工作内存,当线程操作某一数据的时候会先从主存中拷一副本到工作内存,操作完成在刷新提交到工作内存,
线程安全分析:
线程安全无非就是要控制线程对某一资源的操作修改,
所以当多个线程操作同一对象的时候,该对象在每个线程中都存在副本,线程操作各自工作内存中的对象副本,完成之后提交主内存中,如果某一线程操作完成提交,另外以对象同样操作完成提交,这时候主存中保存的对象只能是其中一个线程修改后的资源,就造成对主存中资源操作和修改的混乱;
线程同步:
如果主存中某一资源操作通过synchorized限制,当去操作该资源的时候就会检查是否有其他线程在使用该资源,如果存在则该线程处阻塞转台,等正在操作资源的线程释放资源后,才能操作;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值