会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
蜀中孤鹰
学习无边界,探索无止境!
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
6
7
下一页
2020年2月27日
ConcurrentHashMap核心源码浅析
摘要: 1.引子 并发编程中使用HashMap可能导致程序死循环。因为多线程会put方法添加键值对时将导致HashMap的Entry链表形成环形数据结构,一旦形成环形数据结构,Entry的next节点永远不为空,就会产生死循环获取Entry。 另外Hashtable只是简单地使用阻塞式锁(synchroni
阅读全文
posted @ 2020-02-27 23:45 蜀中孤鹰
阅读(420)
评论(0)
推荐(0)
2020年2月21日
HashMap核心功能源码浅析
摘要: 1.引子 "HashMap"由“hash”和“map"两个单词组成,这里的”map"表示“映射”而不是“地图”的意思,两个单词连起来就是“哈希映射表”。Map是一个接口,它有TreeSet 、LinkedHashMap、EnumMap、HashMap等实现类,其中HashMap无疑最重要也很复杂的一
阅读全文
posted @ 2020-02-21 22:56 蜀中孤鹰
阅读(209)
评论(0)
推荐(0)
2020年2月15日
读写锁ReentrantReadWriteLock源代码浅析
摘要: 1.简介 并发中常用的ReentrantLock,是一种典型的排他锁,这类锁在同一时刻只允许一个线程进行访问,实际上将并行操作变成了串行操作。在并发量大的业务中,其整体效率、吞吐量不能满足实现的需要。而且实际的业务中一般情况是读多于写,多个线程读操作不会改变已经有的数据,不会有数据的一致性问题,而一
阅读全文
posted @ 2020-02-15 00:57 蜀中孤鹰
阅读(311)
评论(0)
推荐(0)
2020年2月9日
可重入排他锁ReentrantLock源码浅析
摘要: 1.引子 "ReentrantLock"单词中的“Reentrant”就是“重入”的意思,正如其名,ReentrantLock是一个支持重入的排他锁,即同一个线程中可以多次获得同步状态,常表现为lock()方法的嵌套使用(类似于synchronized代码类嵌套),而在AQS类注释的使用说明中的Mu
阅读全文
posted @ 2020-02-09 22:20 蜀中孤鹰
阅读(405)
评论(0)
推荐(0)
2020年2月2日
工作中的重构:提高代码质量(二)
摘要: 1.代码逻辑不清晰 origin CommerceItem mergeItem = null; List items = getNgpCartModifierFormHandler().getOrder().getCommerceItemsByCatalogRefId(baseCommItem.ge
阅读全文
posted @ 2020-02-02 20:54 蜀中孤鹰
阅读(206)
评论(0)
推荐(0)
2020年1月23日
Java底层魔术类Unsafe用法简述
摘要: 1 引子 Java中没有指针,不能直接对内存地址的变量进行控制,但Java提供了一个特殊的类Unsafe工具类来间接实现。Unsafe主要提供一些用于执行低级别、不安全操作的方法,如直接访问系统内存资源、自主管理内存资源等,这些方法在提升Java运行效率、增强Java语言底层资源操作能力方面起到了很
阅读全文
posted @ 2020-01-23 10:12 蜀中孤鹰
阅读(1060)
评论(0)
推荐(0)
2020年1月20日
等待条件ConditionObject源码浅析
摘要: 1.引子 任意一个Java对象,都拥有一组监视器方法(定义在java.lang.Object上),主要包括wait()、wait(long timeout)、notify()以及notifyAll()方法,这些方法与synchronized同步关键字配合,可以实现等待/通知模式,这种实现主要体现在在
阅读全文
posted @ 2020-01-20 21:43 蜀中孤鹰
阅读(541)
评论(0)
推荐(0)
2020年1月19日
Java 性能优化:面向对象及基础类型使用优化
摘要: 性能优化是个大筐,很多东西都能往里面装。虽说性能优化的具体方面比较多,但万丈高楼从地起,这里还是从Java最基本的一些入门知识相关的使用优化进行一些做些总结和建议。如何连最基本的API使用都不会,或不会选择更高效的使用方式,那么Java的性能优化就是空谈,就更别提JVM优化 、Web优化这些更高级的
阅读全文
posted @ 2020-01-19 23:47 蜀中孤鹰
阅读(577)
评论(0)
推荐(0)
2020年1月13日
AbstractQueuedSynchronizer实现原理分析
摘要: 1.引子 Lock接口的主要实现类ReentrantLock 内部主要是利用一个Sync类型的成员变量sync来委托Lock锁接口的实现,而Sync继承于AbstractQueuedSynchronizer,且大多数java.util.concurrent包下的并发工具类都是利用AbstractQu
阅读全文
posted @ 2020-01-13 22:33 蜀中孤鹰
阅读(712)
评论(0)
推荐(1)
Lock接口简介
摘要: 1.引子 锁是用来控制多个线程访问共享资源的方式,一般来说,一个锁能够防止多个线程同时访问共享资源,解决数据的一致性问题。在Lock接口出现之前,Java程序是靠synchronized关键字实现锁功能的,而Java SE 5之后,并发包中新增了Lock接口(以及相关实现类)用来实现锁功能,它提供了
阅读全文
posted @ 2020-01-13 22:03 蜀中孤鹰
阅读(706)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
下一页
公告