当前位置:  开发笔记 > 编程语言 > 正文

为什么Shake建议禁用空闲垃圾回收?

如何解决《为什么Shake建议禁用空闲垃圾回收?》经验,为你挑选了1个好方法。

在Shake文档中,它建议使用标志-with-rtsopts=-I0进行编译以禁用空闲垃圾回收.为什么Shake建议这样做?



1> Neil Mitchel..:

默认情况下(没有标志)GHC执行垃圾收集(GC),如果所有Haskell线程都空闲0.3秒.由于构建系统定期运行外部进程,因此所有Haskell线程空闲时间超过0.3秒是很常见的,这会导致大量不必要的垃圾收集.由于机器很可能是从Shake正在运行的过程中完全加载的,因此GC将花费一些时间,否则可能会做有用​​的工作.如果GC运行多线程,问题会更加严重.


更一般地说,空闲垃圾收集主要用于*interactive*应用程序,也适用于有问题的应用程序可能会延迟主要集合中的许多其他线程的并发情况.
推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有