VS Code C/C++ 插件 cpptools 内存占用异常

前期概要

使用VS code连接WSL经常性出现终端和IDE卡住无法使用,关闭VS后即正常。

根本原因

cpptools 吃内存 = "全量符号索引常驻" × "多文件夹多实例" × "可能的宏/symlink 泄漏" × "没用 compile_commands 限制范围"

内存占用分析

实时监控 WSL 内存和进程占用

bash 复制代码
watch -n 0.5 'free -h && echo "---" && ps -eo pid,rss,comm --sort=-rss | head -15'
部分 作用
watch -n 0.5 0.5 秒自动重新执行一次后面的命令
free -h 显示内存和 swap 使用情况(-h = 人类可读,GB/MB)
echo "---" 打一条分隔线
ps -eo pid,rss,comm --sort=-rss 列出所有进程,按内存占用(RSS)从大到小排序
head -15 只取前 15 行(也就是最吃内存的 15 个进程)

解决方法

1.排除无效目录

在settings.json配置,扫描文件树时跳过这些目录,排除了能省掉一大坨无意义解析

bash 复制代码
    //排除 cpptools 扫描文件夹
    "C_Cpp.files.exclude": {
	"**/.git": true,
	"**/build": true,
	"**/bin": true,
	"**/out": true,
	"**/log": true,
	"/PROJECT_ROOT/COMPONENT/ANONYMIZED": true,
    },

settings.json位置

2.降低 CPU 占有率

3.加大内存配置

修改wsl配置文件,swap 用硬盘当内存用,.wslconfig在windows %UserName%目录

4.禁用插件cpp-tools

孩子不听话就直接干掉,一些智能提示和跳转功能就会无法使用了

使用其他工具替换,例如clangd,但是一些大型项目sdk,编译方式五花八门可能不方便统一配置

VS Code clangd 替换 C/C++插件-CSDN博客https://blog.csdn.net/weixin_56637649/article/details/164018151?spm=1001.2014.3001.5502

相关推荐
GeW1 小时前
从挂科到高分通过:RHCE快速拿证的10个提分技巧
linux
蓝胖的四次元口袋2 小时前
Docker Compose多容器编排与Nginx集群实战
运维·nginx·docker compose
懂软件的胡子个哥2 小时前
微信 API 消息回调怎么设计,才能避免丢消息和重复处理
运维·微信·架构·wechatapi·个人微信号二次开发
吉甫作诵2 小时前
Redis 常用命令大全:11 大类命令速查手册
运维·数据库·redis·缓存·nosql
鸠摩智首席音效师2 小时前
Linux /etc/nsswitch.conf 文件有什么作用 ?
linux
东城居士2 小时前
理解pinctrl和gpio子系统驱动
linux·嵌入式系统
H_oRIZoN_2 小时前
Linux入门DAY43 ARM 架构基础、寄存器、大小端、异常向量、交叉编译
linux·arm·linux应用编程
ι:3 小时前
NUC12 Pro 安装 Ubuntu 24.04 LTS 详细教程
linux·windows·ubuntu·nuc
Acrellea4 小时前
告别粗放式能耗管理!安科瑞EIOT平台助力产业园区智慧低碳运营
运维·安全·能源
代码村新手4 小时前
Linux-进程概念
linux