Noflowcloud-Fluid
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于

12垃圾回收器

垃圾收集器如果说收集算法是内存回收的方法论,垃圾收集器就是内存回收的具体实现 在以下要分析收集器的时候,会涉及到并行,串行,并发的概念,做如下解释: 并行(Parallel):指多条垃圾回收线程并行工作,但此时用户线程仍然处于等待状态 串行(serial):相较于并行的概念而言,它是单线程执行,如果内存不够,则程序暂停,启动jvm垃圾回收器进行垃圾回收,回收完,再启动程序的线程 并发(concur
2025-11-14
#JVM

11堆

堆堆、栈、方法区的关系: HotSpot是使用指针的方式来访问对象: Java堆中会存放指向类元数据的地址 五、三者的对比分析5.1 核心区别对比表为更直观呈现 Heap、Non-Heap 和 Off-Heap 的区别,整理如下对比表: 对比项 Heap(堆内存) Non-Heap(非堆内存) Off-Heap(堆外内存) 存储内容 对象实例和数组 类元数据、JIT 编译代码、线程栈
2025-11-14
#JVM

10JVM入门和栈

JVM入门JVM 是 Java Virtual Machine 的缩写,它是一个虚构出来的计算机,一种规范。通过在实际的计算机上仿真模拟各类计算机功能实现。。。。可以看作是 Java 程序执行的环境,它隐藏了底层操作系统和硬件的复杂性,提供了一个统一、稳定和安全的运行平台。 JVM 大致可以划分为三个部门,分别是类加载器(Class Loader)、运行时数据区(Runtime Data Area
2025-11-14
#JVM

06并发工具等

2025-11-14
#JUC

05原子类和Unsafe

AtomicJava 中的 java.util.concurrent.atomic 包提供了一系列类,这些类支持原子操作(即线程安全而无需同步)在单个变量上,这大大减少了并发编程的复杂性。 原子操作类主要有这些: 原子操作的基本数据类型:AtomicBoolean、AtomicInteger、AtomicLong; 原子操作的数组类型:AtomicIntegerArray、AtomicLongA
2025-11-14
#JUC

ConcurrentHashMap

1.7ConcurrentHashMap中保存了一个默认长度为16的Segment[],相当于同时支持16个并发put操作,每个Segment元素中保存了一个默认长度为2的HashEntry[],我们添加的元素,是存入对应的Segment中的HashEntry[]中。所ConcurrentHashMap中默认元素的长度是32个,而不是16个 总结: JDK7 中的 ConcurrentHashM
2025-11-13
#JUC

HashMap

1.HashMap集合简介​ HashMap基于哈希表的Map接口实现,是以key-value存储形式存在,即主要用来存放键值对。HashMap 的实现不是同步的,这意味着它不是线程安全的。它的key(一个)、value(多个)(HashTable不允许)都可以为null。此外,HashMap中的映射不是有序的。 ​ JDK1.8 之前 HashMap 由 数组+链表 组成的,数组是 HashMa
2025-11-13
#Java

Git

Git实战第1章 Git概述Git是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。 Git易于学习,占地面积小,性能极快。 它具有廉价的本地库,方便的暂存区域和多个工作流分支等特性。其性能优于Subversion(svn)、CVS、Perforce和ClearCase等版本控制工具。 1. 何为版本控制版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的
2025-11-13
#Git

04Threadlocal和poll

Threadlocal是什么ThreadLocal叫做线程变量,意思是ThreadLocal中*****填充的变量**属于当前线程***,该变量对其他线程而言是隔离的,也就是说该变量是当前线程独有的变量。ThreadLocal为变量在每个线程中都创建了一个副本,那么每个线程可以访问自己内部的副本变量。 线程安全问题的核心在于多个线程会对同一个临界区的共享资源进行访问,那如果每个线程都拥有自己的“共
2025-11-13
#JUC

03并发容器(无hashmap)

并发容器类整体架构如下图所示: 并发 MapConcurrentMap 接口ConcurrentMap 接口继承了 Map 接口,在 Map 接口的基础上又定义了四个方法: putIfAbsent: 与原有 put 方法不同的是,putIfAbsent 如果插入的 key 相同,则不替换原有的 value 值; remove: 与原有 remove 方法不同的是,新 remove 方法中增加了对
2025-11-13
#JUC
12345…7

搜索

Hexo Fluid