光纤#活着吗?没有定义的

时间:2011-03-16 16:35:18

标签: ruby fiber

我使用ruby1.9.2p180(2011-02-18修订版30909)i686-linux。 Fiber#alive?返回未定义的错误:

fiber = Fiber.new{puts 'hello'}
fiber.alive?
=> undefined error

其他方法,例如Fiber#resumeFiber.yield似乎工作正常。有什么问题?

顺便说一下,Fiber#resumeFiber#transfer之间有什么区别?

1 个答案:

答案 0 :(得分:4)

你先忘了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