Теория
Как прервать выполнение отдельной операции в Ruby?
Исключение прерывает текущую операцию, а exit завершает процесс. Объясняем границы rescue, ensure и безопасную отмену работы потока.
Читать ответ