运行几天后,Emacs的速度会变慢

运行几天后,Emacs的速度会变慢,emacs,emacs24,Emacs,Emacs24,环境:Win7::x64/Emacs24.2.50.1-mingw,3个打开的帧,约10-20个打开的带代码的缓冲区(无智能自动完成/etag/etc)和定向缓冲区(~50%/50%)。平均内存消耗约25-50Mb。未装载MELPA(或类似产品)的额外包装 当Emacs有好几天没有关闭时(通常是在3天后关闭),Emacs不会跟随我从键盘输入的内容:所有输入的内容都会以令人讨厌的延迟显示。在缓冲区之间切换也有明显的延迟 在Emacs响应缓慢期间,我尝试了以下内容: 删除所有缓冲区 M-x垃圾收

环境:Win7::x64/Emacs24.2.50.1-mingw,3个打开的帧,约10-20个打开的带代码的缓冲区(无智能自动完成/etag/etc)和定向缓冲区(~50%/50%)。平均内存消耗约25-50Mb。未装载MELPA(或类似产品)的额外包装

当Emacs有好几天没有关闭时(通常是在3天后关闭),Emacs不会跟随我从键盘输入的内容:所有输入的内容都会以令人讨厌的延迟显示。在缓冲区之间切换也有明显的延迟

在Emacs响应缓慢期间,我尝试了以下内容:

  • 删除所有缓冲区

  • M-x
    垃圾收集

    但这些对我不起作用。唯一的方法是重新启动应用程序。内存消耗仍然是一样的

是否有任何想法/最佳做法来防止此类问题?是否可能卸载并重新加载所有包?还是别的什么


谢谢

由于您使用的是Emacs 24.X,我建议您在实例变得如此缓慢时执行
profiler start
。使用模式cpu。使用emacs几秒钟,然后键入M-x
profiler report
,然后查看结果


幸运的话,你会找到“罪魁祸首”。如果这样做无济于事,而且由于“三天”的等待,平分是昂贵的,我会按照@Drew的建议升级到一个更新的非快照的Emacs

在当前的形式中,这并不是一个真正的编程问题。对超级用户更好?两条评论:(1)您是使用
emacs-Q
还是使用init文件启动emacs的?如果使用init文件,则递归地将其对分,直到找到导致问题的代码。(2) 您正在使用旧的Emacs开发快照。考虑升级到Emacs 24.3(最新版本)。我猜想这是一个编程问题:init文件中的一些代码引起了问题。但我同意,在这一点上我们无法判断——这可能只是一个糟糕的Emacs开发快照。因为我们还没有看到要考虑的代码,是的,它应该可以移到超级用户。我用我的<代码> ~/.Emacs 启动它。否则,我将无法使用Emacs完成日常任务;这就是为什么我没有试图把问题一分为二。我只是认为有标准的方法来强制垃圾收集等。因为我认为对分的方法根本不适合我(它每3天发生一次;进行类调试的时间很长),我将继续在当前状态下使用Emacs,稍后将删除该问题:)如果问题仍然存在于最近的Emacs快照中,我建议您
M-x报告emacs bug
。这些东西往往很难找到,但它们非常重要。