我的Emacs有时候会卡顿很久。似乎是在调用某些插件后发生的,但我不确定。我已经优化了启动时间,使它们自动加载。
有时,它需要几秒钟才能执行我输入的内容,而在其他情况下,它只是转到后台,当我打开它时,它会崩溃并生成核心转储。 转储的输出通常是一些已崩溃的C函数。
我该如何在运行时调试性能,并确定哪些库是原因?可能是内存泄漏,但我又不知道。
我怀疑是expand-region
插件或grizzl
插件导致了这个问题。
我在OS X上的终端中运行Emacs 24。
非常感谢任何帮助!
我的Emacs有时候会卡顿很久。似乎是在调用某些插件后发生的,但我不确定。我已经优化了启动时间,使它们自动加载。
有时,它需要几秒钟才能执行我输入的内容,而在其他情况下,它只是转到后台,当我打开它时,它会崩溃并生成核心转储。 转储的输出通常是一些已崩溃的C函数。
我该如何在运行时调试性能,并确定哪些库是原因?可能是内存泄漏,但我又不知道。
我怀疑是expand-region
插件或grizzl
插件导致了这个问题。
我在OS X上的终端中运行Emacs 24。
非常感谢任何帮助!
我建议你尝试使用M-x profiler-start RET RET
,然后重现慢速行为(可能需要多次,因为这是基于采样的分析器),然后使用M-x profiler-report RET
。 然后在第一个条目上使用C-u RET
,希望能显示时间花费的位置。
至于崩溃:任何崩溃都很可能是Emacs中的错误,因此请使用M-x report-emacs-bug
。
在下一次卡顿时,执行M-x toggle-debug-on-quit
,然后按下C-g
。你将会得到一个包含此时正在执行的命令/函数的回溯信息,通常有一些可疑的函数名称能够指示是哪个插件导致了卡顿。
flycheck-handle-signal
上。有没有办法让flycheck更高效或更快?还是有其他替代方案吗?你用什么进行语法检查?第二个使用22%的是file-truename
,它似乎是f.el包(我不确定为什么会出现,因为我没有使用任何东西)。 - darkskyFfind_file_name_handler
、fast_string_match
和re_search
这些函数上崩溃了。我的搜索使用'isearch-forward-regexp
。这个搜索是慢的吗?有更快的方法吗? - darkskyfile-symlink-p
,这似乎需要大约20%的CPU。我尝试寻找这个函数,但无法在任何地方找到它。你知道这是什么吗? - darksky