解决vs-code高cpu占用率问题

(microsoft.vscode.cpp.extension.darwin进程高cpu占用问题)

免费的vs-code现在已经成为mac/linux平台的码农新宠,毕竟从windows平台开发virsul studio多年的经验积累不是白给的。

我也从诸多的代码编辑器环境,逐渐迁移、统一到了vs-code。最近发现一启动vs-code,风扇就呼呼转,才开始还没注意,以为微软的Windows中二病做派再次发作了。后来逐渐感觉系统响应速度严重下降,仔细检查发现是一个进程CPU占用高企不坠:microsoft.vscode.cpp.extension.darwin,如果是在linux平台则是:microsoft.vscode.cpp.extension.linux。

在网上搜索,发现这个问题早已有之,社区中投诉帖汗牛充栋,大致可以把问题界定向vs-code的插件机制和扩展插件的问题,但实际解决问题的方法一直没有,大家都寄期望于软件的升级。

不过花费大量时间后,最终在一个帖子的很靠后位置找到一个解决办法:

编辑文件:.vscode/extensions/ms-vscode.cpptools-0.17.7/out/src/LanguageServer/client.js,注意如果你的c++插件不是0.17.7版本(当前最新版),请修改为你当前版本的文件夹。

修改内容:

-        extensionProcessName += ‘.linux‘;
+        //extensionProcessName += ‘.linux‘;
+        extensionProcessName += ‘.linux.sh‘;
     }
     else if (plat == ‘darwin‘) {
        extensionProcessName += ‘.darwin‘;

随后再建立一个文件:~/.vscode-insiders/extensions/ms-vscode.cpptools-0.17.7/bin/Microsoft.VSCode.CPP.Extension.linux.sh,同样注意版本号跟文件夹对应。内容为:

#!/bin/bash
exec /opt/glibc-2.18/lib/ld-linux-x86-64.so.2         --library-path /opt/glibc-2.18/lib:/lib64:/lib64     "${0//.sh/}" ${1+"[email protected]"}

原文的修改方式是对linux。尝试修改完重启vs-code,故障排除了。

但是在mac电脑,这种方式就不灵了,macOS所使用的链接库不是这种方式,而且签名机制也不太容易搞定。

所以建议先卸载微软提供的c/c++扩展,可以安装第三方的c++扩展工具,用起来没太大的区别。比如austin出品的C++ Intellisense。

参考文档

https://github.com/Microsoft/vscode-cpptools/issues/1249

原文地址:https://www.cnblogs.com/andrewwang/p/9424827.html

时间: 2024-07-31 18:47:25

解决vs-code高cpu占用率问题的相关文章

Linux下如何查看高CPU占用率线程 LINUX CPU利用率计算

目录(?)[-] proc文件系统 proccpuinfo文件 procstat文件 procpidstat文件 procpidtasktidstat文件 系统中有关进程cpu使用率的常用命令 ps 命令 top命令 单核情况下Cpu使用率的计算 基本思想 总的Cpu使用率计算 计算方法 某一进程Cpu使用率的计算 计算方法 实验数据 某一线程Cpu使用率的计算 计算方法 实验数据 多核情况下cpu使用率的计算 实验一 描述 数据一 数据二 实验二 描述 数据一 数据二 主要问题 Java 系统

解决 Windows 资源管理器 CPU 占用率很高的问题

如题描述,你可以在任务管理器中看到如下的情况: 如果出现该问题的话,可以尝试做以下的调整.将 “导航窗格” 中的 “展开到打开的文件夹” 选项去掉.

while循环&CPU占用率高问题深入分析与解决方案

直接上一个工作中碰到的问题,另外一个系统开启多线程调用我这边的接口,然后我这边会开启多线程批量查询第三方接口并且返回给调用方.使用的是两三年前别人遗留下来的方法,放到线上后发现确实是可以正常取到结果,但是一旦调用,CPU占用就直接100%(部署环境是win server服务器).因此查看了下相关的老代码并使用JProfiler查看发现是在某个while循环的时候有问题.具体项目代码就不贴了,类似于下面这段代码. while(flag) { //your code; } 这里的flag可能是tru

[原]调试实战——程序CPU占用率飙升,你知道如何快速定位吗?

原调试debugwindbghangprocess explorer 前言 如果我们自己的程序的CPU Usage(CPU占用率)飙升,并且居高不下,很有可能陷入了死循环.你知道怎么快速定位并解决吗?今天跟大家分享几种定位方法,希望对你有所帮助. 如何判断是否有死循环? 通过电脑风扇的声音猜测. 如果风扇一直响个不停,说明电脑很热.高CPU占用率会导致CPU发热量增大,从而导致风扇狂响.如果听到风扇响个不停,可以打开任务管理器看看CPU占用率是不是很高.如果发现是我们的进程导致的高CPU占用率,

使用 nice、cpulimit 和 cgroups 限制 cpu 占用率

Linux内核是一名了不起的马戏表演者,它在进程和系统资源间小心地玩着杂耍,并保持系统的能够正常运转. 同时,内核也很公正:它将资源公平地分配给各个进程. 但是,如果你需要给一个重要进程提高优先级时,该怎么做呢? 或者是,如何降低一个进程的优先级? 又或者,如何限制一组进程所使用的资源呢? 答案是需要由用户来为内核指定进程的优先级 大部分进程启动时的优先级是相同的,因此Linux内核会公平地进行调度. 如果想让一个CPU密集型的进程运行在较低优先级,那么你就得事先配置好调度器. 下面介绍3种控制

C++ 多线程编程解决CPU占用率高问题

在用C++进行多线程编程的时候,时常需要写一些类似于死循环的结构来执行代码,这些死循环如果没有经过处理一直开着,那么CPU的占用率就会居高不下的做着很多无用的操做.为解决这个问题我们可以通过在各线程中的适当位置添加Sleep函数来休眠该线程,使其少做这些无用的操作.经过这个处理,正常能压缩掉一半以上的CPU占用.C++ 多线程编程解决CPU占用率高问题

zprofiler三板斧解决cpu占用率过高问题

zprofiler三板斧解决cpu占用率过高问题  九居 浏览 171 2015-04-08 14:11:58 发表于:JVM性能与调试平台 zprofiler 上周五碰到了一个线上机器cpu占用率过高的问题.问题本身比较简单,但是定位过程中动用了多个zprofiler的主要功能,感觉是一个很好的介绍使用zprofiler定位此类问题流程的案例. 在开始使用zprofiler之前,先使用perf确认瓶颈点是否在native中.(以下操作需要root权限,需要pe协助操作)如果线上服务器没有安装p

云服务器 ECS Linux 系统 CPU 占用率较高问题排查思路

https://help.aliyun.com/knowledge_detail/41225.html?spm=5176.7841174.2.2.ifP9Sc 注意:本文相关配置及说明已在 CentOS 6.5 64 位操作系统中进行过测试.其它类型及版本操作系统配置可能有所差异,具体情况请参阅相应操作系统官方文档. 如果云服务器 ECS Linux 系统的 CPU 持续跑高,则会对系统稳定性和业务运行造成影响.本文对 CPU 占用率较高问题的排查分析做简要说明. CPU 负载查看方法 使用 v

Linux下java进程CPU占用率高分析方法

Linux下java进程CPU占用率高分析方法 在工作当中,肯定会遇到由代码所导致的高CPU耗用以及内存溢出的情况.这种情况发生时,我们怎么去找出原因并解决. 一般解决方法是通过top命令找出消耗资源高的线程id,利用strace命令查看该线程所有系统调用 1. 通过top命令找到可疑进程PID top - 09:37:18 up 70 days, 16:29, 2 users, load average: 1.13, 1.04, 0.97 Tasks: 105 total, 1 running