解决Visual Studio Code在Ubuntu上崩溃的问题

我正在使用Ubuntu系统,每次打开Visual Studio Code时,只能短暂打开一秒钟,然后就会崩溃。当通过终端使用code --verbose命令启动Visual Studio Code时,出现以下错误信息:

[19814:0606/134456.415221:ERROR:gpu_process_host.cc(993)] GPU进程意外退出:exit_code=133
[19814:0606/134456.415235:WARNING:gpu_process_host.cc(1364)] GPU进程已崩溃6次
[19814:0606/134456.415243:FATAL:gpu_data_manager_impl_private.cc(448)] GPU进程不可用。再见。
[0606/134456.419486:ERROR:process_memory_range.cc(75)] 超出读取范围
[0606/134456.419494:ERROR:process_memory_range.cc(75)] 超出读取范围

我尝试了删除并重新安装Visual Studio Code,但问题依旧。删除命令如下:

sudo snap remove vscode 
cd ~ 
rm -rf .vscode 
rm -rf .config/Code

解决方法

方法一:恢复到之前的版本

有许多用户发现恢复到之前的版本可以解决问题:

sudo snap revert code --revision 159

评论中提到,这方法在Ubuntu 22.04 LTS和24.04 LTS中测试有效。

方法二:使用--in-process-gpu参数

另一种无需重新安装或降级的方法:

code --in-process-gpu

这解决了GPU进程在X11后端中的问题,使得资源捆绑包可访问,从而避免了崩溃的发生。

方法三:直接恢复到上一个版本

使用以下命令恢复到上一个版本:

sudo snap revert code

这种方法能够恢复到上一个未出问题的版本,并在有新的更新版本时自动升级。

方法四:安装特定版本

如果之前版本已经删除,可以尝试安装特定版本的snap包:

sudo snap install --revision 159 --classic code

方法五:手动安装旧版本的deb包

先卸载snap包,然后手动下载并安装之前的deb包:

sudo snap remove --purge code
wget https://update.code.visualstudio.com/1.89.1/linux-deb-x64/stable -O code_1.89.1_amd64.deb
sudo apt install ./code_1.89.1_amd64.deb

06-22 14:37