这里是我的代码,我用睡眠来模拟一个长时间运行的请求 require 'eventmachine'
def test (i)
puts "#{i} start to sleep..."
sleep i
puts "#{i} end..."
end
EventMachine.run do
(1..3).each do |i|
test i
我使用了一个API,写在EM之上。这意味着拨打电话,我需要写下如下内容: EventMachine.run do
api.query do |result|
# Do stuff with result
end
EventMachine.stop
end
工作正常。 但是现在我想在Sinatra控制器中使用这个相同的API。我试过这个: get "/f
我需要在不断读取redis队列的eventmachine之上有一个无限循环。下面是我的代码。递归是正确的方式吗?我试过loop do循环,但无法使其工作。 require 'em-hiredis'
def read
d = @redis.blpop 'queue', 0
d.callback do |_, value|
p value
read
更新:安装 的EventMachine的宝石,在我的Gemfile: eventmachine (1.0.0, 0.12.10)
请帮帮忙!试图创建一个具有以下数据库: Fitzs-MacBook-Pro:twilio_insanity Fitz$ rake db:create'
返回以下错误: Unable to load the EventMachine C extension; To
我感到困惑的$变量的EventMachine的这部分代码是如何工作的(strip_op是String#sub方法): def receive_data(data)
@buf = @buf ? @buf << data : data
while (@buf && [email protected])
case @parse_state
when AW