当我打开两个 Rails 控制台并在其中一个中按 CTRL+C 时,它将被发送到两个控制台。

为什么会这样,我该如何防止?

( rails 4.2.0)

最佳答案

Rails 4.1 引入了 Spring ,它加快了某些 Rails 组件(如控制台)的启动过程。

每个控制台现在都在尝试访问 spring 服务器以检查现有的 Rails 应用程序是否已经在运行。如果找到,它会进行“热运行”,因为不需要启动应用程序。

按 Ctrl+C 会将 SIGINT 信号发送到 Spring(并且您可以在运行连接到该服务器的控制台的所有终端上看到 ^C )但是 Spring ignore them to avoid killing the master server

AFAICT 从这个分析来看,你无能为力。

关于ruby-on-rails - Rails 控制台 "sharing"CTRL + C,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29447589/

10-12 13:00
查看更多