在大多数编程语言中,使用文件的流程是开放使用关闭的常识.然而,我在ruby代码中多次看到无法比拟的File.open调用,而且我在ruby文档中发现了这些宝石知识:
当垃圾收集器声明I/O流时,它们会自动关闭.
darkredandyellow friendly irc承担了这个问题:
[17:12]是的,而且,文件描述符的数量通常受操作系统的限制
[17:29]我假设在垃圾收集器清理之前你很容易用完可用的文件描述符起来.在这种情况下,您可能希望自己使用它们."垃圾收集者声称." 意味着GC将来会在某个时刻发挥作用.而且价格昂贵.明确关闭文件的原因很多.