我使用ruby1.9.2p180 (30909-02-18修订版) i686-linux。Fiber#alive?返回未定义的错误:
fiber = Fiber.new{puts 'hello'}
fiber.alive?
=> undefined error其他方法,例如Fiber#resume、Fiber.yield似乎工作得很好。怎么啦?
顺便问一下,Fiber#resume和Fiber#transfer之间的区别是什么
发布于 2011-03-17 00:51:29
你忘了先require 'fiber':
f = Fiber.new { puts 'hello' }
=> #<Fiber:0x896109c>
f.alive?
# NoMethodError: undefined method `alive?' for #<Fiber:0x896109c>
# from (irb):2
# from /home/johnf/.rvm/rubies/ruby-1.9.2-rc1/bin/irb:17:in `<main>'
require 'fiber'
=> true
f.alive?
=> true https://stackoverflow.com/questions/5328505
复制相似问题