不知不觉回到哈尔滨工作三年了,经历了两家公司,最近又燃起了换工作的心思。都说人挪活、树挪死,所以,我还想要活着,甚...[作者空间]
本文主要用来学习下,redis当中使用的压缩表和跳跃表,为什么在诸多的数据结构中,redis要选择他们作为自己的数...[作者空间]
五子棋作为大家休闲娱乐的方式,相信大家都玩过,并且不少人应该精于此道。作为程序员的我们是否考虑过它是如何实现的?人...[作者空间]
在JUC这个线程同步工具包下,有几个比较游戏的类,Semaphore、CountdownLatch和CyclicB...[作者空间]
1.java集合接口 集合类在java.util包下,主要有Set、List和MapCollection:Coll...[作者空间]
1.阻塞IO模型 最传统的IO模型,就是在读和写的过程中发生阻塞现象。用户线程发起IO请求之后,内核会去检查数据是...[作者空间]
前面我们学习了AQS,ReentrantLock等,现在来学习一下什么是读写锁ReentrantReadWrite...[作者空间]
1.jvm内存模型 jvm内存模型主要有运行时期模型和非运行时期两部分组成,通常说的jvm内存模型是指运行时期内存...[作者空间]
春节将至,又快到了一年一度抢红包的激动时刻。 为此呢,我专门针对想要学习java,或刚开始学习java的小白们,写...[作者空间]
虎年就快到了,最近有没有想要做ppt,写总结缺少素材的小伙伴?苦于没有背景素材啊,我来教你一招,爬取大量春节图片,...[作者空间]
前面我们学习了ReentrantLock,其底层就是用了AQS实现的,应该先讲这一章节,但是当时给忘了,现在给补上...[作者空间]
还记得上一篇文章当中提到的内存屏障(Memory Fence)吗?其实Volatile的实现原理就是通过内存屏障来...[作者空间]
一、CPU缓存结构 现代CPU通常都是由三层缓存架构组成的,如下图所示: windows下的cpu: 查看linu...[作者空间]
本章节主要了解下什么指令集并行,用于理解前面章节多线程场景下出现的指令重排序问题。 一、基础概念 Clock Cy...[作者空间]
一、java内存模型 JMM(Java Memory Model),它定义了主存、工作内存的概念,底层同时对应着C...[作者空间]
一、ReentrantLock简介 1.1 特点 ReentrantLock具有如下的特点: 可重入 可中断 可设...[作者空间]
一、简介 1.1 主要方法 Park/UnPark方法是LockSupport当中的方法。 其常用方法有如下: p...[作者空间]
一、为什么需要wait/notify? 我们都知道wati/notify用于线程间的同步。 假设有一把锁lock,...[作者空间]
一、JMH工具 在讲解之前,我们先熟悉一下JMH工具。 JMH 是 OpenJDK 团队开发的一款基准测试工具,一...[作者空间]
偏向锁的引入,对轻量级锁的CAS操作进行了优化。轻量级锁需要每次都是用CAS来尝试获取锁,占用CPU时间。 jdk...[作者空间]