Я написал специальную модель Rails. Эта модель поддерживается на самом деле сервером не таблицей базы данных (поэтому она не наследуется от ActiveRecord::Base
). Чтобы получить запрошенную информацию с сервера, я открываю ему SSH-соединение. Поскольку рельсы не повторно используют объект, новый объект, а также новое SSH-соединение с сервером будут созданы для получения любого запроса, который будет получен. Чтобы уменьшить нагрузку на сервер, я хочу закрыть соединение SSH, прежде чем объект модели получит собранный мусор. Я задаюсь вопросом, делает ли ruby механизм уведомления, чтобы сообщить объекту, что он будет уничтожен? Если это так, я могу использовать это уведомление, чтобы узнать, когда закрыть соединения SSH. Если нет, мне нужно будет сделать это вручную, когда я знаю, что я закончил с объектом.
Если мне нужно вручную позаботиться об этом, могу ли я явно уничтожить объект? Или лучшее, что я могу сделать, это object = nil
?