会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
whltw
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
2021年11月17日
AQS怎么理解
摘要: AQS全称AbstractQueuedSynchronizer,是一个抽象类的缩写,在jdk的java.util.concurrent.locks包里面 语义可以理解为基于先进先出的队列结构的同步框架,队列是基于双向链表实现的。 AbstractQueuedSynchronizer抽象类主要是针对队
阅读全文
posted @ 2021-11-17 23:10 whltw
阅读(86)
评论(0)
推荐(0)
2021年11月15日
乐观锁、悲观锁,sychronoized是什么锁?
摘要: 乐观锁:乐观锁认为并不会产生并发问题。认为在读取数据之后,该数据并不会被其他线程修改,在进行真正更新的时候会去检查是有其他线程修改了这个数据,一般可以用版本号或cas操作来控制 悲观锁:悲观锁认为每次读取数据都是会有其他线程会对当前数据进行修改,所以在读取数据的时候会进行加锁处理,当有其他线程来修改
阅读全文
posted @ 2021-11-15 19:58 whltw
阅读(135)
评论(0)
推荐(0)
sychronized为什么是非公平锁
摘要: sychronized底层是基于mutex(互斥锁)的lock。sychrnozied并不是根据线程来获取锁的先后顺序来分配锁的,而是等待的线程都是先有机会获取锁的。这样做的目的是为提高性能,缺点则是可能会产生饥饿现象(某个线程一直得到锁)
阅读全文
posted @ 2021-11-15 19:40 whltw
阅读(80)
评论(0)
推荐(0)
2021年11月13日
jvm对锁的优化
摘要: jvm对锁(sychornized)的优化开始于jdk1.6。优化的方面主要技术包括:自旋锁、自适应自旋锁、偏向锁、锁销除、锁粗话,轻量级锁,重量级锁 1自旋锁:在锁争用不多、锁占用时间比较少的情况下,自旋锁让线程去循环获取锁,这比线程阻塞性能更好(包括挂起或唤醒)。自旋锁默认自旋的次数是10次,可
阅读全文
posted @ 2021-11-13 23:55 whltw
阅读(274)
评论(0)
推荐(0)
2021年11月12日
重写hashCode 和equals方法的必要性
摘要: 想必在最开始的时候都经历过为啥String 对象明明设置的字符串一样用== 的时候不一定会相等,用equals方法就会相等;用同一个实体类new出两个属性值相等的对象,hashCode值不一样等等。 其实对上述有疑问还是java的基础知识没有掌握牢固。 我们来拿HashMap来做说明 首先HashM
阅读全文
posted @ 2021-11-12 00:12 whltw
阅读(60)
评论(0)
推荐(0)
2021年10月15日
mockito的常规使用
摘要: 简介 在实际的开发中,单元测试是不可避免的一环。很多时候针对复杂的类依赖和调用关系的场景(某个方法可能会层层调用其他类的方法,且逻辑复杂),造数据去测这种场景的代码,是非常难受且难以全覆盖的。针对这样的问题,mockito的工具可以很好的解决。mockito工具可以只针对测试你当前测试的方法的主要平
阅读全文
posted @ 2021-10-15 18:20 whltw
阅读(798)
评论(0)
推荐(0)
上一页
1
2
公告