什么是机架 - "无接受者"错误?

bea*_*akr 8 ruby rack thin

在尝试运行我的config.ru时,我遇到一个奇怪的错误,我似乎无法调试称为"无接受者"错误.

完整的错误消息:

eventmachine.rb:572:in `start_tcp_server': no acceptor (RuntimeError)
Run Code Online (Sandbox Code Playgroud)

有谁知道这个错误意味着什么?谢谢.

Tel*_*hus 12

正如@Fivell所说,我认为问题是你有一个thin仍在运行的先前实例.而不是从另一个端口开始,我建议杀死前一个实例.像这样的东西应该做的工作(我在这里重新创建了问题,所以这是我最终的真实输出):

telemachus caps $ ps ax | grep ruby
  153   ??  S      7:52.18 ruby /usr/local/bin/djsd
15801   ??  S      0:00.40 ruby caps.rb  # this is our problem, get it's PID
15973 s000  S+     0:00.00 grep ruby

telemachus caps $ kill -9 15801 # thin needs -9 - hard to kill
telemachus caps $ ps ax | grep ruby
  153   ??  R      7:52.86 ruby /usr/local/bin/djsd
16057 s000  S+     0:00.00 grep ruby
Run Code Online (Sandbox Code Playgroud)

根据您启动应用的方式,您可能需要grep使用不同的内容(例如,如果您使用shotgun或使用rackup).