You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

KDE环境下VS Code调用kdialog致内存无限占用系统冻结求助

问题:Ubuntu 24.04 KDE环境下VS Code「另存为」对话框无法弹出,kdialog进程资源耗尽

问题描述

在Ubuntu 24.04的KDE桌面环境中,使用Visual Studio Code打开「另存为」对话框时,对话框无法弹出,同时kdialog进程会占用100% CPU并持续分配内存,最终导致系统完全冻结。

复现步骤(含VS Code清理重装)

执行以下命令彻底清理并重装VS Code:

snap remove --purge code
rm -rf ~/.config/Code
rm -rf ~/.vscode
snap install code --classic

完成后打开VS Code(禁用所有扩展、关闭GPU加速),新建文件并尝试保存,此时VS Code会启动带以下参数的kdialog进程:

kdialog --attach=75497476 --title="Save As" --getsavefilename /home/user/textfile "All Files (*.txt)|Plain Text (*.bat *.cmd) [...]"

已排查信息

  • 单独执行上述kdialog命令可正常打开对话框并返回正确路径
  • 通过strace -f -p $(pgrep kdialog)跟踪kdialog进程,发现其无限调用brk内核函数,说明进程在持续扩展内存
  • 用gdb调试发现进程卡在KBuildSycoca::recreate的无限循环中,该问题与~/.cache/.ksyscoca5*文件相关,对应PID的.lock文件始终存在,即使清理缓存后仍会自动重建

求助

  1. 如何进一步排查该问题?
  2. ksycoca与此问题存在何种关联?

环境版本:kdialog 23.08.5,VS Code 1.94.2 x64

内容的提问来源于stack exchange,提问作者Nicola Lissandrini

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 08:07:41