我写了一个简单的EventMachine服务器,如下所示:
EventMachine.run do
EventMachine::WebSocket.start(:host => HOST, :port => PORT) do |ws|
# snip...
end
end
现在,我想从另一个目录中的另一个文件触发它。如果EventMachine是一个简单的Ruby类,我会添加一个run
(或类似的)类方法,并执行以下操作:
#!/usr/bin/env ruby
$LOAD_PATH << "./lib"
require "my_event_machine"
MyEventMachine.run
知道怎么做吗?谢谢!
答案 0 :(得分:3)
你已经有了解决方案:
my_app.rb:
class MyApp
def run
EM.run do
EM::WebSocket.start(:host => HOST, :port => PORT) do |ws|
# snip...
end
end
end
end
run.rb:
#!/usr/bin/env ruby
$LOAD_PATH << "./lib"
require "my_app"
MyApp.new.run