
JDK
vioao
Coding Life
展开
-
JAVA并发编程:Synchronized和Lock
前言Java多线程编程中,保证线程安全通常会使用到synchronized和Lock。那么合适该使用synchronized,什么时候该使用Lock呢。这个就需要我们对synchronized和Lock有个清晰的了解。..原创 2017-05-30 22:47:50 · 552 阅读 · 0 评论 -
JAVA并发编程: CAS和AQS
说起JAVA并发编程,就不得不聊聊CAS(Compare And Swap)和AQS了(AbstractQueuedSynchronizer)。CAS(Compare And Swap)什么是CAS CAS(Compare And Swap),即比较并交换。是解决多线程并行情况下使用锁造成性能损耗的一种机制,CAS操作包含三个操作数——内存位置(V)、预期原值(A)和新原创 2017-06-06 23:55:04 · 48286 阅读 · 11 评论 -
HashMap源码解析
前言其实之前也有看过HashMap的源码,觉得自己对其中的实现原理什么的都还算是比较了解了。其实当初看的时候就没有看的多仔细,只是应付面试的问题罢了。 这不,最近有人提出个问题自救就没法回答了。问: 我们知道,初始化 HashMap 的时候,可以使用默认的构造函数,也可以使用一个带 initialCapacity 参数的构造函数用于构造一个已知大小的实例。那么已知map大小,求initialCapacity 。原创 2017-06-10 11:43:32 · 331 阅读 · 0 评论 -
多线程和锁连杀
多线程常见问题:线程模型,实现同步的方式及其区别,线程池的原理锁优化有哪些、手写生产者消费者模型等原创 2019-02-13 16:40:42 · 252 阅读 · 0 评论