黑洞代码

LV1
发表了文章

synchronized 和 ReentrantLock 的区别

“可重入锁” 指的是自己可以再次获取自己的内部锁。比如一个线程获得了某个对象的锁,此时这个对象锁还没有释放,当其再次想要获取这个对象的锁的时候还是可以获取的。如...

黑洞代码
发表了文章

JDK1.6之后synchronized关键字底层优化

JDK1.6 对锁的实现引入了大量的优化,如偏向锁、轻量级锁、自旋锁、适应性自旋锁、锁消除、锁粗化等技术来减少锁操作的开销。

黑洞代码
发表了文章

Elasticsearch单实例安装

想用最简单的方式去理解 Elasticsearch 能为你做什么,那就是使用它了,让我们开始吧!

黑洞代码
发表了文章

Elasticsearch从零开始

作为最受欢迎和最有活力的全文搜索引擎系统,ElasticSearch有着你无法拒绝的魅力,可以方便快速地集成到项目中储存、搜索和分析海量数据。本文我们从零开始上...

黑洞代码
发表了文章

Intellij idea永久破解,亲测可用!!!

随着 IDEA 的 2020 版本的发布,新增和优化了很多的功能,今天来讲一讲如何永久破解,亲测可用,对idea2020永久破解 教程感兴趣的朋友可以跟随小编一...

黑洞代码
发表了文章

synchronized关键字

synchronized 关键字解决的是多个线程之间访问资源的同步性,synchronized关键字可以保证被它修饰的方法或者代码块在任意时刻只能有一个线程执行...

黑洞代码
发表了文章

线程常用方法对比

Java平台中,因为有内置锁的机制,每个对象都可以承担锁的功能。Java虚拟机会为每个对象维护两个“队列”(姑且称之为“队列”,尽管它不一定符合数据结构上队列的...

黑洞代码
发表了文章

多线程概述

并发编程的目的就是为了能提高程序的执行效率提高程序运行速度,但是并发编程并不总是能提高程序运行速度的,而且并发编程可能会遇到很多问题,比如:内存泄漏、死锁、线程...

黑洞代码
发表了文章

多线程学习指南

我们都知道多线程应该是大部分 Java 程序员最难啃的一块骨头之一,这部分内容的难度跨度大,难实践,并且市面上的参考资料的质量也层次不齐。

黑洞代码
发表了文章

Java8 ConcurrentHashMap源码解析

JDK1.8的实现已经摒弃了Segment的概念,而是直接用Node数组+链表+红黑树的数据结构来实现,并发控制使用synchronized和CAS来操作,整个...

黑洞代码
发表了文章

JDK1.7ConcurrentHashMap源码解析

我们都知道HashMap在多线程情况下,在put的时候,插入的元素超过了容量(由负载因子决定)的范围就会触发扩容操作,就是rehash,这个会重新将原数组的内容...

黑洞代码
发表了文章

HashMap(JDK1.8)源码+底层数据结构分析

HashMap 主要用来存放键值对,它基于哈希表的Map接口实现,是常用的Java集合之一。

黑洞代码
回答了问题
发表了文章

LinkedList源码解析

LinkedList是一个实现了List接口和Deque接口的双端链表。LinkedList底层的链表结构使它支持高效的插入和删除操作,另外它实现了Deque接...

黑洞代码
发表了文章

ArrayList源码解析(3)

细心的同学一定会发现 :以无参数构造方法创建 ArrayList 时,实际上初始化赋值的是一个空数组。当真正对数组进行添加元素操作时,才真正分配容量。即向数组中...

黑洞代码
发表了文章

ArrayList源码解析(2)

黑洞代码
发表了文章

ArrayList源码解析(1)

ArrayList 的底层是数组队列,相当于动态数组。与 Java 中的数组相比,它的容量能动态增长。在添加大量元素前,应用程序可以使用ensureCapaci...

黑洞代码
发表了文章

Java集合之Map接口

如果你看过 HashSet 源码的话就应该知道:HashSet 底层就是基于 HashMap 实现的。(HashSet 的源码非常非常少,因为除了 clone(...

黑洞代码
发表了文章

Collection 子接口之 Set

一般我们需要对一个集合使用自定义排序时,我们就要重写compareTo()方法或compare()方法,当我们需要对某一个集合实现两种排序方式,比如一个 son...

黑洞代码
关注了用户

疯狂之始

0 文章541 回答2 关注者

个人简介

个人成就

扫码关注云+社区

领取腾讯云代金券