windows10 explorer占用太多内存问题解决

发现windows10 explorer占用太多内存,而且还在不停的上涨....

于是关闭了打开的explorer,这时候内存不上涨了,但是也不下跌!

让小浣熊帮我找找原因:

explorer 在今天 21:43 启动,1 小时就涨到 10 GB,而且只加载了 1 个非系统模块(OneDrive 的 3 MB),说明泄漏在自身堆里,不是第三方 DLL 注入。我采一下增长速率和句柄对象,确认是泄漏还是缓存。

内存现在已经停止增长(50 秒内工作集稳定在 10033.8 MB,CPU 几乎不动),说明它不是正在泄漏,而是之前某个操作把它一次性顶上去了。我看看整机内存分布和当时发生了什么。

找到了几个关键线索。继续确认 explorer 当前打开了哪些文件夹(这直接决定它缓存了多少东西)。

explorer 现在没有任何打开的文件夹窗口,却仍占着 9.4 GB------这是最关键的异常点。我把几个第三方右键扩展的 DLL 解析出来看看。

explorer 无窗口却占 9.4 GB,而且 OneDrive 进程根本没在跑,但它的 shell 扩展却挂在 explorer 里。另外还发现两个"孤儿"右键菜单注册。我再确认几个点。

explorer 无窗口、无 GDI/USER 泄漏、CPU 只用了 18 分钟,却握着 10 GB------这不像正常缓存。我再确认两件事:它是否还在涨、以及 OneDrive 的云占位文件情况。

内存完全冻结在 9.42 GB,不涨不落,CPU 也不动------句柄、线程、GDI/USER 全部正常。这不是"正在泄漏",而是一次性卡死的分配。最后确认几个点。

内存 9.4 GB 完全冻结、无窗口、CPU 不动------这很符合"explorer 一次性持有了某个大对象没释放"。我验证一下剪贴板这个经典嫌疑点。

明确的证据链已经出来了。最后补两个数据点。

内存冻结、无窗口、虚拟地址空间却占了 2 TB ------ 这是地址空间泄漏的典型特征。再确认最后几个点。

内存冻结、无窗口、虚拟地址空间却膨胀到 2 TB ------ 我把最后两个疑点确认掉。

我有了足够的证据。最后确认一下 Z: 盘(你的 TypedPaths 里有大量 Z: 路径)和提交内存情况。

结论

是的,而且严重到不正常。explorer.exe 一个人吃掉了整机一半内存,并且已经"冻结"了------不会自己降下来。

指标 实测值 正常参考
工作集 9,420 MB 100--500 MB
私有内存 10,414 MB 80--400 MB
虚拟地址空间 2,113,447 MB(≈2 TB) 数百 MB
句柄 / 线程 / GDI / USER 2638 / 42 / 260 / 307 全部正常
累计 CPU 时间 1,088 秒 不是 CPU 问题
打开的资源管理器窗口 0 个 ← 关键异常

整机 20.5 GB,只剩 3.98 GB 可用;其余进程加起来才 6~7 GB。

我做的排查

1. 先排除了泄漏和句柄堆积

连续 5 分钟采样,内存死死卡在 9,420 MB 不动、CPU 增量为 0、线程 46 个全是 Wait/UserRequest。这不是"正在泄漏",而是一次性分配后不再释放------所以它不会自愈。

2. 排除了第三方 DLL 注入和 GDI 泄漏

explorer 加载 305 个模块,非 Windows 目录的只有 1 个:FileSyncShell64.dll(OneDrive,3 MB)。GDI/USER 对象数完全正常。

3. 找到了三个真正的元凶

① Z: 盘是 VirtualBox 共享文件夹(主因)

复制代码
Z:  →  \\VBoxSvr\Downloads   (VirtualBox Shared Folders, 359.7 GB)

你的「运行」历史 TypedPaths 里 8 条路径有 7 条指向 Z: ,包括 Z:\kaggle\working\duan\tools\ai_copilot\output 这类深层大目录。

VBox 共享文件夹是走 SMB 重定向的虚拟化转发文件系统,性能极差。explorer 在这种路径下做图标/缩略图/元数据缓存时,缓存会异常膨胀且不随窗口关闭释放------这正好解释了"窗口一个都没有、内存却顶到 10 GB"。

② Downloads\chatbi 里有 17,805 个文件

其中 16,271 个是 .light 文件 (你自研 light 语言的积木块)、879 个 .py。这是典型的海量小文件"缓存炸弹"目录,而且它在 Downloads------会被快速访问/最近使用反复扫描。

复制代码
C:\Users\skywalk\Downloads\chatbi  →  17,805 个文件
  └─ chatbi\light\积木库\blocks\...  单个目录 400~604 个 .light

③ OneDrive 的"孤儿"shell 扩展

OneDrive 进程根本没在运行 ,但它在 explorer 里注册了 7 个图标叠加处理器 + 7 个 FileSyncShell 。而 C:\Users\skywalk\OneDrive 目录里只有 1 个文件------你明显没用它。每次枚举文件都要回调这些已失效的扩展。

④ 火绒的 2 个右键菜单扩展 (HRShell.dll / HrShredShell.dll)挂在所有文件对象上,属次要放大因素。

立即处理(一条命令回收 10 GB)

复制代码
Stop-Process -Name explorer -Force; Start-Sleep 3; if (-not (Get-Process explorer -ErrorAction SilentlyContinue)) { Start-Process explorer }

效果:立即回收约 9.4 GB。代价:所有资源管理器窗口关闭,未完成的"另存为/打开"对话框会消失(任务栏会闪一下)。不影响 WorkBuddy、Doubao、box-agent 等其他程序。

治本(按收益排序)

1. 别在资源管理器里浏览 Z: 盘 ------ 这是根因

复制代码
net use Z: /delete

以后要访问 VirtualBox 共享,用 \\VBoxSvr\Downloads 直连,或把文件先复制到本地再操作。这是投资回报最高的一步。

2. 把 chatbi 移出 Downloads

复制代码
Move-Item "$env:USERPROFILE\Downloads\chatbi" "G:\dswork\chatbi"

16,000+ 个 .light 小文件不该待在 Downloads。

3. 处理 OneDrive(你只有 1 个文件在里面,进程还没跑)

设置 → 应用 → 找到 Microsoft OneDrive → 卸载;或至少从启动项移除,消除 7 个失效图标叠加。

4. 关掉快速访问的"最近使用文件/常用文件夹"

资源管理器 → 查看 → 选项 → 隐私:取消勾选这两项,点"清除"。减少 shell 追踪负担。

5. 顺手注意:C 盘只剩 41.9 GB


补充一点 :WSearch(Windows 搜索索引)是 Stopped + Disabled 状态,所以不是索引服务的锅。你的系统补丁停留在 19041.6466,离最新还有距离,explorer 的部分已知内存问题在新版里有修复。

复制代码
{"action":"open_settings","params":{"tab":"onboarding"},"display_text":"把「不自动执行系统变更」等偏好记到个人记忆里,下次诊断我会按你的习惯来。"}

实践

我到powershell里执行这句,果然内存释放了

复制代码
Stop-Process -Name explorer -Force; Start-Sleep 3; if (-not (Get-Process explorer -ErrorAction SilentlyContinue)) { Start-Process explorer }
相关推荐
天意__1 小时前
Linux部署Qwen轻量模型
linux·服务器·qwen
对空六课2 小时前
无头浏览器访问对跳出率的过滤规则
服务器·前端·算法·数据分析
开开心心就好2 小时前
一元二次方程求解工具,答案带详细步骤
java·服务器·开发语言·算法·pdf·ocr·perl
Data analyse4562 小时前
数据埋点设计的事件命名规则校验
服务器·前端·数据分析
Peregrine93 小时前
Linux 基本指令大全
linux·运维·服务器
Huangjin007_3 小时前
【Linux 系统篇(二十八)】文件(五):Ext 系列文件系统(下):Ext2块组结构,inode与文件寻址原理
linux·运维·服务器
javachen__3 小时前
JsonView:一套VO实现多角色字段返回
java·linux·服务器
Pniubi4 小时前
基于openclaw开发skill与自研agent中的skill开发区别
服务器·agent·skill·openclaw·龙虾
jaronho4 小时前
【脚本】 【Linux】启动所有网卡
linux·运维·服务器