首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
底层
订阅
zql
更多收藏集
微信扫码分享
微信
新浪微博
QQ
19篇文章 · 0订阅
《提升能力,涨薪可待》-Java并发之AQS全面详解
AQS全称AbstractQueuedSynchronizer,即抽象的队列同步器,是一种用来构建锁和同步器的框架。 AQS 解决了在实现同步器时涉及的大量细节问题,例如自定义标准同步状态、FIFO 同步队列。 基于 AQS 来构建同步器可以带来很多好处。它不仅能够极大地减…
聊聊HashSet源码
今天聊一下HashSet源码,HashSet内部基本使用HashMap来实现,本博客将通过一下几个方向讲解。
Java并发——ConcurrentHashMap(JDK 1.8)
一说到HashMap与Hashtable区别就会想到前者线程不安全,后者线程安全。但是当我们需要线程安全的时候,Hashtable并不是一个良好的选择,concurrentHashMap才是。 我们可以看到Hashtable用synchronized关键字来保证线程安全,锁住当…
jdk8 ConcurrentHashMap 源码解析
先说重点put方法, 对于并发而言, 读取比较简单,不涉及到数据改动, 就不需要锁。了解在put数据逻辑就能更清楚的知道ConcurrentHashMap是如何工作的 简单讲一下这个类。Java无法直接访问底层操作系统,而是通过本地(native)方法来访问。不过尽管如此,JV…
Thread类中join方法的实现原理
join()是Thread类的一个方法,根据jdk文档的定义,join()方法的作用,是等待这个线程结束,即当前线程等待另一个调用join()方法的线程执行结束后再往下执行。通常用于在main主线程内,等待其它调用join()方法的线程执行结束再继续执行main主线程。 通过下…
学会反射后,我被录取了(干货)
有反必有正,就像世间的阴和阳,计算机的0和1一样。天道有轮回,苍天...(净会在这瞎bibi) 在学习反射之前,先来了解正射是什么。我们平常用的最多的 new 方式实例化对象的方式就是一种正射的体现。假如我需要实例化一个HashMap,代码就会是这样子。 某一天发现,该段程序不…
Java并发之Condition
在使用Lock之前,我们使用的最多的同步方式应该是synchronized关键字来实现同步。配合Object的wait()、notify()系列方法可以实现等待/通知模式。Condition接口也提供了类似Object的监视器方式,与Lock配合可以实现等待/通知模式,但是这两…
HashMap 查漏补缺
HashMap 是面试的钉子户了,网上分析的文章也有很多,相信大家对于原理已经烂俗于心了。但最近在看源码时,发现其中一些实现细节其实不太好理解,所以决定以问答的形式在这里记录一下,写的时候尽量把原因说明白。 容量并不是指 HashMap 所能存储的键值对数量,而是其内部的 ta…
「总结篇」别再说自己不会JVM了,看完这篇能和面试官扯上半小时(上)
一个能够运行字节码的虚拟机。 屏蔽了具体的操作系统的信息。 正是以上两点,使得Java程序具有一次编译,到处执行的特性。 从上面的图中,有两种颜色不同的区域,红色的是线程共享区域,绿色的是线程私有区域。下面我们一个一个讲清楚,不过在学习这部分的时候,最好先思考为什么会有这些区域…
Java并发编程 -- Condition
1. 函数列表 返回值返回true/false,在time之前被唤醒,返回true,超时返回false。 唤醒等待在Condition上所有的线程。 2. 具体实现 当然,用notifyAll可能会用更少的代码,这种实现方式虽然复杂,单性能上会比使用notifyAll()要强很…