Emacs经常变慢和滞后 - 如何调试?

dar*_*sky 9 emacs

我的Emacs有时会有很多滞后.它似乎是在我调用某些插件之后,但我不确定.我已经优化了我的启动时间,以便自动加载它们.

有时,它需要几秒钟才能完成我输入的内容,而在其他情况下,它只会进入后台,当我打开它时,它会崩溃和核心转储.转储的输出通常是一些崩溃的C函数.

如何在运行时调试性能,并确定哪些库是原因?这可能是内存泄漏,但我再也不知道了.

我怀疑它是expand-region插件或grizzl插件.

我在OS X的终端上运行Emacs 24.

任何帮助将非常感激!

Ste*_*fan 13

我建议你尝试M-x profiler-start RET RET,然后重现缓慢的行为(可能甚至几次,因为这是一个基于采样的分析器),然后M-x profiler-report RET.然后C-u RET在第一个条目应该有希望告诉你时间花在哪里.

至于崩溃:任何崩溃都是Emacs中一个错误的可能标志,所以M-x report-emacs-bug.


lun*_*orn 8

M-x toggle-debug-on-quit,然后C-g在下一个滞后期间击中。你会得到一个包含此时正在评估的命令/函数的回溯,通常会有一些可疑的函数,其名称会泄露插件,这会导致滞后。