在纤维中间退出后该怎么办

时间:2012-03-20 21:49:09

标签: ruby ruby-1.9.3 fiber fibers

一旦我在光纤实例[{1}}中间完成,即我fiber编辑而没有完成它,我不再使用yield,应该怎样我这样做?我应该明确销毁它,还是像fiber这样的光纤,还是垃圾收集得当?如果是,那么Ruby如何知道我将来是否会去kill

1 个答案:

答案 0 :(得分:0)

如果它已经死了,你不必杀死它;来自光纤的yield将完成这项工作。您只需确保光纤实例不存储在任何变量中。这就是你“释放”它们的方式:垃圾收集器通过定期销毁对象而不引用它们来工作。如果你将光纤保留在一些变量中,它会留在内存中,直到你无法访问它为止。