会员
周边
新闻
博问
闪存
赞助商
YouClaw
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
detention
博客园
首页
新随笔
联系
订阅
管理
2019年11月13日
==与equals的区别
摘要: 1.== 用==符号比较有两种情况,比较基本类型比较的是它们的值,如果比较的是对象比较的就是内存地址。 基本类型比较代码: int i = 10;int num = 10;System.out.println(i == num); 运行结果为:true; 引用类型比较代码: String str1
阅读全文
posted @ 2019-11-13 10:50 detention
阅读(267)
评论(0)
推荐(0)
2019年11月11日
CAS
摘要: CAS是什么? CAS(Compare And Swap):比较并交换,它是一条并发原语。 原语属于操作系统用语范畴,是由若干条指令组成,用于完成某个功能的一个过程,并且原语的执行必须是连续的,在执行过程中不允许被中断,也就是说CAS是一条原子指令,不会造成所谓的数据不一致问题。 compareAn
阅读全文
posted @ 2019-11-11 17:55 detention
阅读(143)
评论(0)
推荐(0)
2019年11月8日
ABA问题
摘要: 什么是ABA问题? 简单来说就是:狸猫换太子。 假设这里有两个线程线程1和线程2,线程1工作时间需要10秒,线程2工作需要2秒,主内存值为A,第一轮线程1和线程2都把A拿到自己的工作内存,2秒中后线程2工作完成把A改成了B再写回去,又过了2秒,线程2把B改成了A再写回去,然后就线程2进入休眠状态,这
阅读全文
posted @ 2019-11-08 15:58 detention
阅读(1580)
评论(0)
推荐(0)
volatile
摘要: volatile是什么? volatile是java中的关键字,也是java虚拟机提供的轻量级的同步机制(乞丐版的synchronize)。 volatile的三大特性 1.可见性 2.不保证原子性 3.禁止指令重排序 为什么说volatile是轻量级的同步机制? 因为大多数多线程开发都需要遵守JM
阅读全文
posted @ 2019-11-08 14:43 detention
阅读(546)
评论(0)
推荐(0)
公告