首页
分类
标签
友链
归档
瞬间
搜索文章
= 768 && isOpen) { isOpen = false; setTimeout(() => enableScroll(document.body), 200); }" >
enableScroll(document.body), 200);" x-transition:enter="transition ease duration-300" x-transition:enter-start="opacity-0" x-transition:enter-end="opacity-100" x-transition:leave="transition ease duration-300" x-transition:leave-start="opacity-100" x-transition:leave-end="opacity-0" style=" position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.5); z-index: 1001; overscroll-behavior: none; " >
enableScroll(document.body), 200)" >
首页
分类
标签
友链
归档
瞬间
# MCP
(2)
# Tool Calling
(1)
# Tool
(0)
# rag
(1)
# redis stack
(2)
# ollama
(1)
# spring ai alibaba
(12)
# selenuim
(1)
# WinSW
(1)
# Drools
(1)
# MQTT
(3)
# 消息中间件
(43)
# langchain4j
(10)
# spring-AI
(0)
# Jasypt
(1)
# superset
(1)
# deepseek
(5)
# 面试题
(0)
# Python爬虫
(1)
# leetcode
(11)
更多 +
什么是三色标记
三色标记是一种用于并发垃圾收集的算法,常用于分代垃圾收集器中的老年代的垃圾回收过程中。它基于对象的可达性来判断对象是否存活,并标记出存活对象。 三色标记算法将对象分为三种状态:白色、灰色和黑色。 白色表示对象尚未被扫描,即未被标记为存活对象。 灰色表示对象已经被扫描,但其引用的其他对象尚未被扫描。
作者:青云
发布时间:2024-04-22
分类:
Java
标签:
#
jvm
JVM为什么使用元空间替换了永久代
虚拟机使用元空间替代了永久代是因为永久代在过去的实现中存在一些问题和限制,而元空间提供了更好的性能和灵活性。以下是一些详细的原因: 内存管理:永久代的内存管理是由虚拟机自身控制的,无法根据应用程序的需求进行动态调整。而元空间使用本地内存进行管理,可以根据应用程序的需求动态分配
作者:青云
发布时间:2024-04-22
分类:
Java
标签:
#
jvm
JVM中一次完整的 GC 流程
JVM中的垃圾回收是自动进行的,它的目标是回收不再使用的对象,释放内存空间,并且保证程序的正常运行。下面是一次完整的GC流程的一般步骤: 标记阶段:GC从根对象开始,通过根对象的引用链,标记所有可达的对象。根对象包括活动线程的栈帧中的局部变量、静态变量、JNI引用等。 垃圾标记:在标记阶段完成后,G
作者:青云
发布时间:2024-04-22
分类:
Java
标签:
#
jvm
什么是TLAB
TLAB是Java虚拟机中的一种优化技术,用于提高对象分配的效率。它是一种线程本地的内存分配缓冲区,每个线程在堆上都有自己独立的TLAB。 在Java中,对象的分配通常是通过在堆上分配内存来完成的。为了提高对象分配的效率,Java虚拟机引入了TLAB机制。TLAB会为每个线程预先分配一块内存空间,线
作者:青云
发布时间:2024-04-22
分类:
Java
标签:
#
jvm
说说你对垃圾收集器的理解
垃圾收集器是Java虚拟机的一部分,负责管理内存中的对象,以确保内存的有效使用和回收不再使用的对象。以下是对垃圾收集器的理解: 内存管理:垃圾收集器负责管理Java应用程序的堆内存。堆内存是用于存储Java对象的区域,而垃圾收集器负责分配、回收和释放这些内存。 自动回收
作者:青云
发布时间:2024-04-22
分类:
Java
标签:
#
jvm
强引用、软引用、弱引用、虚引用的区别
在Java中,强引用、软引用、弱引用和虚引用是不同类型的引用,用于管理对象的生命周期。它们之间的主要区别在于对象被垃圾回收的条件和时机。 强引用是最常见的引用类型,通常通过赋值操作创建。当一个对象具有强引用时,垃圾回收器不会回收它,即使内存不足也不会回收。 软引用通过
作者:青云
发布时间:2024-04-22
分类:
Java
标签:
#
jvm
"双亲委派机制"是否可以被打破?
双亲委派模型通常是由Java虚拟机本身实现和强制执行的,目的是确保类加载的安全性和唯一性。 但在某些情况下,你可以通过编写自定义类加载器来打破双亲委派机制。这通常在以下情况下发生: 加载非标准类文件:如果你需要加载非标准的类文件,例如从数据库或网络中动态加载类,传统的双亲委派模型可能无法满足需求,因
作者:青云
发布时间:2024-04-22
分类:
Java
标签:
#
jvm
设置堆内存XMX应该考虑哪些因素
设置Java堆内存大小(-Xmx参数)是一个重要的性能调优决策,需要考虑多个因素,以确保应用程序在合适的内存限制下运行顺畅,避免内存不足或内存浪费的问题。以下是考虑设置-Xmx参数时需要考虑的因素: 应用程序的内存需求:首先要了解应用程序的内存需求。这包括应用程序的数据量、并发用户数、对象创建频率等
作者:青云
发布时间:2024-04-22
分类:
Java
标签:
#
jvm
CPU百分百问题如何排查
排查CPU百分百问题通常需要一步一步地识别并解决潜在的原因。以下是一些常见的排查步骤: 查看系统负载:首先,使用系统监控工具比如top查看系统的负载情况。 确定是哪个进程导致CPU高占用:查找哪个进
作者:青云
发布时间:2024-04-22
分类:
Java
标签:
#
jvm
对象一定分配在堆中吗
不一定,对象还可以分配在栈上,对象栈上分配通常是指将对象引用分配到方法调用栈上,而不是在堆内存中分配对象的实例数据。这种分配方式主要涉及基于逃逸分析的优化技术。 逃逸分析是Java虚拟机的一种优化技术,用于分析对象的生命周期和作用域。如果分析表明某个对象的引用不会逃逸到方法调用栈之外,即不会被其他线
作者:青云
发布时间:2024-04-22
分类:
Java
标签:
#
jvm
共 24 篇文章
1
2
3
页