技术栈
jvm
这周也會开心
6 小时前
java
·
开发语言
·
jvm
Map集合的比较
1. 线程安全: HashMap 是非线程安全的,HashTable 是线程安全的; HashTable 内部的方法基本都经过 synchronized 修饰。(如果你要保证线程安全的话就使用 ConcurrentHashMap 吧!);
Jerry404_NotFound
9 小时前
java
·
开发语言
·
jvm
·
工厂方法模式
工厂方法模式
工厂方法模式是一种创建型设计模式,它提供了一种将对象实例化的过程延迟到子类的方法。该模式定义了一个用于创建对象的接口,但让子类决定实例化哪一个类。
oioihoii
10 小时前
java
·
jvm
·
c++
C++虚函数表与多重继承内存布局深度剖析
在C++面向对象编程中,虚函数是实现运行时多态的关键机制。单继承场景下的虚函数表(vtable)布局相对直观,但当涉及到多重继承时,情况就变得复杂起来。本文将深入探讨虚函数表的实现原理,并重点解析多重继承下的内存布局,帮助开发者更好地理解C++对象模型的底层机制。
wangchen_0
10 小时前
java
·
开发语言
·
jvm
深入理解 C/C++ 强制类型转换:从“暴力”到“优雅”
在 C/C++ 的编程世界里,类型系统既是保护伞,有时也是束缚。当你需要突破某种类型的限制时(例如将 int 视作 float,或者将基类指针转换为派生类指针),强制类型转换 (Type Casting) 就登场了。
banpu
13 小时前
jvm
JVM相关
JVM包含两个子系统与两个子组件,四个部分组成:运行流程:首先通过编译器把java文件转换为字节码文件,类加载器把字节码文件加载到内存中,将其放在运行时数据区的方法区内。字节码文件是JVM的一套指令集规范,不能直接交给底层的操作系统来执行,因此需要特定的命令解析器执行引擎Execution engine,将字节码翻译成底层指令,再交给CPU去执行,而这个过程需要用到其他语言的本地库接口Native Interface来实现整个功能。
鸽鸽程序猿
1 天前
java
·
jvm
【JavaSE】简单理解JVM
JVM:java虚拟机,是仿照真实的操作系统进行设计的。真实操作系统中,对于进程的地址空间是进行了区域划分的。JVM也就仿照此,也进行了区域划分的设计。
小毛驴850
1 天前
jvm
JDK主流版本及推荐版本
根据当前Java生态发展(截至2025年7月),结合主流企业实践、技术特性和支持周期,以下是JDK主流版本及推荐版本的详细分析:
没有bug.的程序员
2 天前
java
·
开发语言
·
网络
·
jvm
·
微服务
·
云原生
·
架构
微服务网关:从“必选项”到“思考题”的深度剖析
在微服务架构的演进中,网关似乎已成为标配组件。但当我们不加思考地将网关作为“理所当然”的解决方案时,我们可能正在为一个过度设计、过度中心化的架构付出代价。本文将从四个维度深度剖析:为什么我们认为网关是必需的?去中心化到底付出了什么代价?网关真正应该承担什么职责?以及,反向代理与网关的本质区别是什么?
tgethe
2 天前
java
·
开发语言
·
jvm
==和equals的区别
先记住最核心的一句话:这里分两种情况:未重写equals() 和 已重写equals()。此时equals()和==效果完全一样,都是比较对象的内存地址。
步步为营DotNet
2 天前
java
·
jvm
·
.net
深度探索.NET 中 IAsyncEnumerable:异步迭代的底层奥秘与高效实践
在.NET 开发中,处理大量数据或执行异步操作时,异步迭代成为提升性能和响应性的关键技术。IAsyncEnumerable<T> 接口为此提供了强大支持,它允许以异步方式逐个生成序列中的元素,避免一次性加载大量数据到内存。深入理解 IAsyncEnumerable<T> 的底层实现与应用,能帮助开发者构建更高效、更具扩展性的异步应用程序。
winfield821
2 天前
java
·
jvm
GC 日志全解析:格式规范 + 问题分析 + 性能优化
GC 日志无“统一标准格式”,但遵循「通用核心结构 + 收集器特有扩展」,所有日志行的核心字段可归纳为: [时间戳][日志级别/标签][GC事件] 核心信息(内存变化/时长/触发原因)
无限进步_
2 天前
开发语言
·
jvm
·
c++
·
ide
·
git
·
github
·
visual studio
C++多态全面解析:从概念到实现
多态(polymorphism)是面向对象编程的三大特性之一,指同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。
懒惰蜗牛
2 天前
java
·
开发语言
·
jvm
·
链接
·
类加载机制
·
初始化
Day66 | 深入理解Java反射前,先搞清楚类加载机制
很多学习Java反射的人第一次接触反射时,都会直接去看Class.forName()、getDeclaredMethod()这些 API,用着用着就懵了:为什么这么慢?为什么能访问private成员?为什么框架里到处都是反射?其实问题就出在缺了一些前置知识。
额呃呃
2 天前
java
·
开发语言
·
jvm
信号量唤醒线程的实际机制
信号量不会唤醒所有线程,而是仅唤醒与信号量值相当数量的线程:这种设计确保了只有真正需要工作的线程才会被唤醒,避免了不必要的线程唤醒和上下文切换开销。
bjxiaxueliang
2 天前
java
·
开发语言
·
jvm
一文详解Cpp多线程编程:从传统pthread到现代thread实践指南
在当今多核处理器普及的时代,多线程编程已成为提升程序性能、改善用户体验的关键技术。C++11标准库引入了原生的线程支持,标志着C++正式进入现代化并发编程时代。本章将从基础概念入手,系统性地介绍C++多线程编程的各个方面,包括线程创建与管理、同步机制、高级并发特性等。我们将对比传统的POSIX线程(pthread)与现代C++线程库,帮助开发者理解不同技术方案的优缺点,掌握在实际项目中做出正确选择的能力。
开心比对错重要
2 天前
java
·
jvm
·
算法
·
面试
进程、线程、虚拟线程详解及线程个数设置
解释: 系统的瓶颈在于 CPU处理器的计算能力。特点: 程序需要进行大量的逻辑判断、复杂的数学运算或数据处理。CPU 几乎一直处于 100% 的满负荷工作状态,没有时间休息。
Selegant
3 天前
java
·
开发语言
·
jvm
百万 QPS 下的 Java 服务调优:JVM 参数、GC 策略与异步非阻塞编程
目标读者:中高级 Java 工程师、系统架构师、性能优化工程师在高并发场景下,如何让 Java 应用稳定支撑百万级 QPS(Queries Per Second)?这不仅是对代码质量的考验,更是对 JVM 调优、垃圾回收策略、线程模型和 I/O 架构的综合挑战。本文将通过一个完整的实验流程,手把手带你从零搭建高吞吐服务,并深入剖析 JVM 参数配置、GC 策略选择以及异步非阻塞编程模型的实战调优技巧。
消失的旧时光-1943
3 天前
android
·
linux
·
jvm
从 JVM 到 Linux:一次真正的系统级理解
写了很多年代码,我一直以为自己懂 Java、懂 Android、懂后端。 直到有一天我把 JVM、Linux、进程、线程、微服务 放在同一张图里, 才意识到: 原来这些年我只是会“用”,而不是“懂”。
五阿哥永琪
3 天前
jvm
JVM 的内存区域是如何划分的?
📍 干嘛的记录当前线程正在执行的字节码行号JVM 靠它知道“下一条指令去哪”📌 特点线程私有占用内存极小