я не знаю что лучше. сложно все как-то получается.
можно придумать кейс, в котором запуск по новой фейлится еще раньше, чем первый фейл, потому что деструкторы не отработали до конца.
пока что все выглядит так, что для того, чтобы все корректно работало с кидающимися деструкторами, нужно специальным образом
писать код, учитывающий факт бросания исключений из деструкторов. в случае не кидающихся деструкторов код тоже нужно правильно
организовать. вопрос в том, что будет проще. пока что особого профита я не увидел и предпочту вариант, в котором деструкторы
все-таки не кидают ничего. эта дорожка хотябы протоптана.