优化Emacs的垃圾搜集行为

原文地址:https://www.lujun9972.win/blog/2019/05/16/优化emacs的垃圾搜集行为/index.html

http://akrl.sdf.org/ 中看到的,记录一下

Emacs触发垃圾收集的阀值由 gc-cons-threshold 决定,当Emacs自上一次垃圾收集后分配的内存超过该阀值时就会触发新一轮的垃圾收集行为。 然而该阀值默认居然不到800K,导致Emacs频繁地进行垃圾收集。

由于垃圾收集速度很快,我们平时可能对Emacs的垃圾收集操作不会有感知,将 garbage-collection-messages 设置为 t 可以在 echoline 中显示GC过程. 另外,通过查看 gc-elapsed 变量的值我们可以看到Emacs花费在GC过程所花的时间。

gc-elapsed
35.051446504999994

为了提高Emacs性能,一个很自然的想法就是提高 gc-cons-threshold 的阀值,让Emacs不要那么频繁地进行垃圾收集。 然而,这里就存在两个问题:

  1. 什么时候触发垃圾收集比较合适?是否一定要等到超过了阀值才收集?
  2. 这个阀值设置为多大比较合适
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值