首页
文章列表
标签墙
返回找工具啦
内存泄漏
共 23 篇文章
Java ThreadLocalMap的线性探测法解决哈希冲突
2026-05-01 23:17:20
Java ThreadLocalMap的线性探测法解决哈希冲突 ThreadLocalMap 是 Java ThreadLocal 的核心存储结构,用于维护线程特有的变量副本。不同于 Java 集合框架中常见的 HashMap 使用链表法或红黑树来处理哈希冲突,ThreadLocalMap 选择了线
Java
线性探测法
哈希冲突
6
0
Java ThreadLocal在线程池复用时的内存泄漏风险
2026-04-29 03:19:15
Java ThreadLocal在线程池复用时的内存泄漏风险 Java中的 ThreadLocal 是实现线程隔离的利器,但在使用线程池的场景下,如果处理不当,它会变成内存泄漏的元凶。线程池的核心特性是“线程复用”,这导致ThreadLocal的生命周期变得不可控。本文将手把手带你分析其原因,并提供
Java
线程池
内存泄漏
20
0
C++智能指针enable_shared_from_this的循环引用解决
2026-04-21 00:20:09
C++智能指针enablesharedfromthis的循环引用解决 在C++开发中,使用 std::sharedptr 管理对象生命周期时,常遇到两个核心痛点:如何在类成员函数中安全地获取指向当前对象的 sharedptr,以及如何由此引发的循环引用导致内存泄漏问题。直接传递 this 指针会导致
C++
智能指针
循环引用
36
0
C++ std::unique_ptr的release后手动delete的安全风险
2026-04-20 03:20:25
C++ std::uniqueptr的release后手动delete的安全风险 std::uniqueptr 是 C++11 引入的智能指针,旨在通过 RAII(资源获取即初始化)机制自动管理内存,防止内存泄漏。然而,release 成员函数的存在提供了一种逃离自动管理的机制。如果在调用 rele
C++
智能指针
内存管理
37
0
JavaScript闭包导致内存泄漏的典型场景与排查方法
2026-04-19 20:15:19
JavaScript闭包导致内存泄漏的典型场景与排查方法 闭包是 JavaScript 中最强大的特性之一,允许内部函数访问外部函数的作用域。然而,如果不小心处理,闭包会轻易锁住原本该释放的变量,导致内存泄漏。以下是导致闭包内存泄漏的三个典型场景,以及使用 Chrome DevTools 进行排查和
闭包
内存泄漏
前端开发
39
0
JavaScript 内存管理:垃圾回收与内存泄漏
2026-04-17 21:25:20
JavaScript 内存管理:垃圾回收与内存泄漏 JavaScript 具备自动内存管理机制,开发者无需像 C 或 C++ 那样手动分配(malloc)和释放(free)内存。然而,理解其背后的垃圾回收(Garbage Collection, 简称 GC)机制,是编写高性能代码和避免内存泄漏的关键
JS
内存管理
垃圾回收
42
0
Java 线程局部变量ThreadLocal内存泄漏分析
2026-04-14 17:26:50
Java 线程局部变量ThreadLocal内存泄漏分析 认识 ThreadLocal的基本概念。ThreadLocal是Java中提供的一种线程绑定机制,它能让每个线程拥有自己的变量副本,避免了多线程环境下的资源竞争问题。当你在一个线程中设置ThreadLocal变量时,这个变量只对该线程可见,其
Java
ThreadLocal
内存泄漏
64
0
Python 内存分析:memory_profiler 与 objgraph
2026-04-14 11:20:21
Python 内存分析:memoryprofiler 与 objgraph 什么是内存分析 内存分析是软件开发中的一个重要方面,通过分析内存使用情况,可以识别和优化内存消耗高的部分,防止内存泄漏,提高应用程序的稳定性和性能。 使用 memoryprofiler 进行内存分析 什么是 memorypr
Python内存分析
内存优化
性能调试
35
0
Swift 内存管理:ARC 与 weak 引用
2026-04-07 02:10:21
Swift 内存管理:ARC 与 weak 引用 在 Swift 中编写应用时,系统会自动处理绝大部分内存分配与回收工作,这一机制被称为 ARC(自动引用计数)。理解 ARC 与 weak(弱引用)的配合逻辑,能彻底避免应用运行时的“内存泄漏”问题,让软件运行更流畅、更稳定。 阶段一:理解 ARC
内存管理
自动引用计数
弱引用
57
0
C 内存泄漏:动态内存未释放
2026-04-06 18:09:24
C 内存泄漏:动态内存未释放 动态内存管理是 C 语言编程的核心能力之一。当程序在堆上申请了内存却未能正确释放,就会发生内存泄漏。长期运行的程序若存在泄漏,会逐渐耗尽系统资源,导致程序崩溃或系统卡死。 以下是排查、修复及预防内存泄漏的实操指南。 1. 理解泄漏原理 内存泄漏的本质是“失去了对内存地址
C语言
内存泄漏
动态内存
83
0
C++ 内存问题:内存泄漏与野指针
2026-04-06 04:41:48
C++ 内存问题:内存泄漏与野指针 C++ 给了开发者直接操作内存的能力,但也把双刃剑交到了你手里。内存泄漏和野指针是最常见也最棘手的两个问题,它们像定时炸弹一样潜伏在代码中,随时可能导致程序崩溃或安全漏洞。这篇文章会教你识别、预防和解决这些问题。 第一章:认识内存泄漏 什么是内存泄漏 内存泄漏是指
C++内存
内存泄漏
野指针
46
0
Java 性能问题:GC 频繁导致的性能下降
2026-04-06 03:55:03
Java 性能问题:GC 频繁导致的性能下降 一、GC 频繁的表现与判断方法 在生产环境中,如果你的 Java 应用出现以下现象,很可能是 GC 频繁导致的性能问题: 应用响应变慢:接口响应时间忽高忽低,特别在流量高峰时经常超时。 CPU 使用率异常:GC 线程会占用大量 CPU 资源,导致业务线程
Java性能优化
GC调优
JVM
55
0
Python 弱引用Weakref解决缓存内存泄漏
2026-04-05 20:54:54
Python 弱引用 Weakref 解决缓存内存泄漏 在 Python 开发中,缓存是提升性能的常用手段。然而,一个容易被忽视的问题是:缓存可能会导致内存泄漏。当缓存中的对象一直持有引用,这些对象就无法被垃圾回收,即使它们已经不再需要。本文将介绍 Python 标准库中的 weakref 模块,教
Python
weakref
内存泄漏
63
0
C++ 智能指针问题:循环引用导致内存泄漏
2026-04-05 18:29:43
C++ 智能指针问题:循环引用导致内存泄漏 在现代 C++ 开发中,智能指针是管理动态内存的核心工具。它能自动释放内存,避免手动 new/delete 带来的隐患。然而,即使使用智能指针,内存泄漏的风险依然存在——最常见的原因就是循环引用。 本文将深入剖析循环引用的形成原因、内存泄漏的底层机制,以及
C++智能指针
循环引用
内存泄漏
48
0
Python 内存问题:内存占用过高的排查与优化
2026-04-04 20:16:40
Python 内存问题:内存占用过高的排查与优化 内存问题堪称 Python 开发中最让人头疼的隐形杀手。一个运行良好的服务,随着时间推移内存逐渐攀升,直至耗尽系统资源;一个数据处理脚本,本地测试正常,到生产环境却频繁 OOM。这些问题的根源往往在于开发者对 Python 内存管理机制的理解不够深入
Python内存管理
内存优化
内存泄漏
45
0
Go 内存问题:内存占用过高与 GC 压力
2026-04-04 13:29:55
Go 内存问题:内存占用过高与 GC 压力 Go 语言以其高效的垃圾回收器著称,但这并不意味着你可以完全忽视内存管理。在实际项目中,内存占用过高和 GC 压力仍然是影响服务稳定性的两大顽疾。本文将深入剖析这些问题,并提供系统化的诊断与优化方案。 内存问题的典型症状 当你的 Go 程序出现内存问题时,
Go内存优化
GC调优
内存泄漏
42
0
C 语言内存管理:malloc() 与 free() 的正确使用
2026-04-03 12:22:14
C 语言内存管理:malloc 与 free 的正确使用 C 语言不提供自动内存回收机制,程序员必须手动申请和释放动态内存。malloc 和 free 是最基础、最关键的两个函数。用错它们会导致程序崩溃、内存泄漏或安全漏洞。 理解动态内存的基本规则 动态内存是指程序运行时从堆(heap)中临时借用的
C语言
内存管理
malloc
79
0
C++ 内存管理:new/delete 与智能指针
2026-04-03 03:00:12
C++ 内存管理:new/delete 与智能指针 C++ 允许程序员直接控制内存,这是它高效灵活的关键,但也容易引发内存泄漏、重复释放等严重问题。掌握 new/delete 和现代智能指针的正确用法,是写出安全可靠 C++ 代码的基础。 理解原始内存操作:new 与 delete 使用 new 动
C++内存管理
new/delete
智能指针
54
0
Python 内存管理:垃圾回收机制与内存泄漏排查
2026-04-03 02:02:15
Python 内存管理:垃圾回收机制与内存泄漏排查 Python 自动管理内存,开发者无需手动分配或释放。但当程序长时间运行、占用内存持续增长时,就可能遇到了内存泄漏。要高效排查和解决这类问题,必须理解 Python 的内存回收机制,并掌握实用的检测手段。 理解 Python 的垃圾回收机制 Pyt
Python内存管理
垃圾回收
引用计数
68
0
C++智能指针std::shared_ptr的循环引用解决方案
2026-04-02 19:19:15
C++智能指针std::sharedptr的循环引用解决方案 C++标准库中的std::sharedptr通过引用计数自动管理动态内存,但当两个或多个对象互相持有对方的sharedptr时,会形成循环引用,导致引用计数永远不会归零,从而引发内存泄漏。解决这一问题的核心方法是使用std::weakpt
C++智能指针
shared_ptr
weak_ptr
55
0
1
2
下一页