请阅读:参见最后一点。我不认为这是一个与 Ubuntu 相关的问题,而是与 VS Code 相关的问题。
最近,17.10以下和18.04(我今天刚刚升级),Ubuntu 会随机完全冻结。我无法移动光标或使用键盘。当然,我尝试切换到 TTY 会话,但没有成功。每次,我都必须求助于SysRq+ REISUB,这(显然)不是首选。
我曾尝试切换图形驱动程序,理论上可能是这样。我最初使用的是开源 nVidia 驱动程序,后来切换到专有驱动程序,但没有成功。我目前正在使用开源驱动程序。
我通常只打开 Firefox(没有大量的标签已加载) 和 VS Code,最多打开几个文件和一个终端。
有任何想法吗?
更新:系统日志未显示任何迹象任何事物根本没发生什么,更别说出错了。我不知道这是否相关,但有时(尤其是在启动后)程序会花费大量时间(> 5-10 秒),即使是命令行程序也是如此。
又一次更新!——即使禁用了所有 GNOME 扩展,它仍然崩溃了。我尝试了 XFCE,它仍然崩溃了。
概括:Ubuntu 在看似随机的时间完全冻结,在日志中不留任何痕迹,并且与任何特定的桌面环境或 GNOME 扩展无关。
(可能是最终更新):我确信这是 VS Code 的问题。我已经运行 GNOME 好几天了,同时还打开了其他 Electron 应用程序(Slack、Pulse 等),没有出现过一次卡死的情况。我已经在 Twitter 上直接向 VS Code 发送了 DM,可能会提交错误报告,因为他们还没有回复。
答案1
所以事实证明这并不是 Ubuntu 所特有的,但无论如何我都会在这里发布它以供将来参考。
显然,即使我使用该files.exclude
设置忽略了某些文件(特别是./node_modules
目录),VS Code 仍然手表那些文件发生改变。
要解决这个问题,只需将列表从 复制files.exclude
到files.watcherExclude
。这将阻止 VS Code 搜索 或其他类似目录中的数千个文件node_modules
。这样,它将留下一些Chrome 会占用大量 RAM。
答案2
我刚刚遇到了这个问题。启动一个大型项目后,我的系统会在大约 20 秒后冻结并变得无响应(Ubuntu 18.04)。在启动 VSCode 时运行 htop 显示它占用了所有内核的 100%(i7-8700K),占用了所有内存(16GB),然后是交换。片刻之后就冻结了。这是因为扩展程序不好,在我的情况下是 CSS Peek。
因此,请尝试在禁用扩展的情况下启动 vscode(code --disable-extensions),看看是否仍会发生这种情况。如果它没有追踪到有问题的扩展,并且把它送入地狱。
我遇到了随机的完全冻结,花了好几个小时试图找出原因。重新启动时,日志真的没什么用。我最初以为是 nvidia 驱动程序,但不是——只是一个 VSCode 扩展。
答案3
我在 Ubuntu 16.04 中遇到了同样的问题。
我确实关掉了git.自动刷新在里面设置,然后它就可以完美顺利地运行
答案4
我遇到了同样的问题。要为特定项目修复此问题,您需要更新为.vscode/settings.json
如下所示:
{
"python.pythonPath": "/usr/bin/python3",
"files.exclude": {
"**/.git": true,
"**/.svn": true,
"**/.hg": true,
"**/CVS": true,
"**/.DS_Store": true,
"**/node_modules": true,
"**/.firebase": true
},
"files.watcherExclude": {
"**/.git/objects/**": true,
"**/.git/subtree-cache/**": true,
"**/node_modules/**": true
}
}