Hi, We shouldn't mix Fiber#yield, Fiber.resume and Fiber.transfer. In other words, fiber1 shouldn't use Fiber#resume on the your example. I think it is a bug of current Ruby. -- // SASADA Koichi at atdot dot net