【发布时间】:2014-05-29 21:12:21
【问题描述】:
当使用带有 Puma 的 MRI Ruby 2.1.2 时(比如 1 个具有 8 个线程的工作人员),GC 什么时候运行?它是在所有这些线程都空闲时由父工作进程运行,还是由父进程根据需要运行,即使这些线程正忙于处理请求?
这种行为在 Ruby 2.0 中会有什么不同(没有延迟 GC)。
【问题讨论】:
当使用带有 Puma 的 MRI Ruby 2.1.2 时(比如 1 个具有 8 个线程的工作人员),GC 什么时候运行?它是在所有这些线程都空闲时由父工作进程运行,还是由父进程根据需要运行,即使这些线程正忙于处理请求?
这种行为在 Ruby 2.0 中会有什么不同(没有延迟 GC)。
【问题讨论】:
已在Github issue回复。
只要 VM 决定运行它,它就会运行。 Puma 没有采取任何措施来控制这一点,也无法控制。
【讨论】: