CentOS 7(100% CPU)上的代码 1.53.X 有问题吗?

Hai*_* Vu 10 centos7 visual-studio-code

自从最近在我的 CentOS 7 主机(64 位 x86)上升级到最新的 VS Code(1.53.2)以来,每次我运行它(没有安装扩展)时,代码都会无限期地消耗 100% 的内核。

当我将代码降级到 1.52.0 时一切又正常了,CPU 利用率正常;但是当我再次升级到 1.53.2(或 1.53.0)时,同样的 100% CPU 利用率问题再次出现。

在此处查看实际问题:https : //www.youtube.com/watch?v=kicUYrwSY-A

听起来像是代码 1.53.X 中的某些内容被破坏了,或者可能是 CentOS,因为 Redhat 正在弃用它。希望有人有解决方案,而不是降级代码。

App*_*l W 10

不幸的是,在 VSCode 1.53 中,微软放弃了对 RHEL 7 和 CentOS 7 的支持,这是 CentOS 唯一的 LTS 版本,这是一个不幸的短视之举。

正如我在GitHub 问题评论中发布的那样,作为一种笨拙的解决方法,您可以将 VS Code 锁定到最后一个兼容版本。当然,这意味着您不会在该机器上获得 VS 代码的任何升级(但您将拥有仍与该机器兼容的最新版本)。

以下是其他任何发现此问题并需要将 VS Code 固定到 1.52 以免他们的工具链完全中断的人的具体步骤:

  1. 第一的:

sudo yum downgrade code-1.52.1-1608137084.el7.x86_64

或者如果您还没有安装 VS Code:

sudo yum install code-1.52.1-1608137084.el7.x86_64

  1. 然后:

sudo yum install yum-plugin-versionlock

(如果尚未安装 versionlock 插件)

  1. 最后:

sudo yum versionlock code

(将其锁定在 1.52)

请注意,仍然可以通过安装每晚安装的“内部人员”构建来测试 1.52 之外的更新版本,该构建会安装一个单独的code-insiders命令。

更新:微软声称已经在最新的代码内幕版本 (1.60.0) 中解决了这个问题,这应该很快就会成为通常的版本(可能在距九月大约一周的“八月”版本中)。同时,您可以安装 code-insiders 版本作为解决方法。

  • **更新2(已解决):** VS Code 1.60 版本已发布。看来问题已经解决了。如果您已锁定 1.52 版本,则可以使用以下命令确认:`sudo yum versionlock list` 如果这是唯一的版本锁定,要删除锁定以允许升级,请使用:`sudo yum versionlock clear` (2认同)

pca*_*ter 4

从 1.53 开始,VS Code 不再支持 CentOS 7 的默认 C++ ABI。

请参阅https://github.com/microsoft/vscode/issues/115784

解决方法是:

  1. 继续使用 1.52 版本
  2. 安装新版本的 C++
  3. 升级到CentOS 8

链接的问题讨论了这些。