Tag: 垃圾收集

Ruby中对象破坏的通知

我写了一个自定义的Rails模型。 此模型由实际服务器支持,而不是由数据库表支持(因此它不从ActiveRecord::Baseinheritance)。 为了从服务器获取所请求的信息,我打开了一个SSH连接。 由于rails不会重用对象,因此将为接收到的任何请求创建新对象以及与服务器的新SSH连接。 为了减少服务器压力,我想在模型对象被垃圾收集之前关闭SSH连接。 我想知道ruby是否提供通知机制来通知对象它将被销毁? 如果是这样,我可以使用此通知知道何时关闭SSH连接。 如果不是,当我知道我已完成对象时,我将需要手动操作。 如果我需要手动处理这个,我可以明确地销毁对象吗? 或者我能做的最好的是object = nil ?