![铬中的调试冻结](https://linux22.com/image/1323742/%E9%93%AC%E4%B8%AD%E7%9A%84%E8%B0%83%E8%AF%95%E5%86%BB%E7%BB%93.png)
我在多功能框(位置栏)中打字时经常遇到挂起的情况。
之前也出现过类似的问题(段错误),这是一个普遍存在的错误。这是由于使用较新版本的 gcc 编译 chromium 造成的。
我现在遇到了类似的问题。唯一的区别是,当我在位置栏中输入内容时,整个 chrome 会完全冻结,并且位置栏下方打开的自动完成对话框也会保持打开状态。
然后我必须通过以下方式终止该进程
$killall 铬
2 次以杀死铬。我该怎么做才能调试该问题?
看着维基百科,我设法在 chrome 挂起时向其所有进程发送了 SIGABRT 信号。现在,我不知道在哪里可以找到 DUMPS。我该在哪里找?我想在 code.google.com 上提交错误,但在找到核心转储之前我无法这样做。
我甚至尝试在项目页面,尚无回复。
答案1
- 首先,在设置中禁用“启用即时搜索以加快搜索速度”,
- 您可以使用 strace 调试器(或操作系统的替代品),例如
strace -f chrome
- 或者在它已经冻结时附着在上面(
strace -fp PID
), - 尝试从终端运行 Chromium,它会报告错误并找到正确的错误,
- 尝试使用不同的编译器进行编译(例如,如果你使用 cc 或相反的话,使用 gcc),有时它会有所帮助,因为有些错误没有人能发现它,
- 可以选择在恢复模式下运行 Chromium(禁用所有附加组件) - 尝试一下,
- 去 about:about 看看你能找到什么有趣的东西,
- 使用调试参数(-g 且不带优化)编译 chromium,并通过 gdb 调试器运行或生成核心文件来检查崩溃的回溯
- 可能是重复的错误,因此请使用不同的关键字来查找错误,例如:即时冻结