Глупый вопрос: есть приложение, оно запускается в Resource[F, A]
. У приложения есть состояние. Есть идея в том чтобы на graceful shutdown приложения это состояние записывать в базу данных.
У меня есть ощущение что записывать это состояние при cancel ресурса - это плохая идея. Но аргументов мало. Из того что приходит в голову: (1) тот кто создаёт Resource может не ожидать что его закрытие будет относительно долгим, (2) cancel ресурса - это конкурентная операция, со всеми выходящими последствиями, (3) надо использовать Resource.makeCase
или вроде того чтобы не попасть на двойную ошибку (если ошибка случилась и в use
и в самой записи в базу данных).
Уговорите (или отговорите) всё-таки (не)сливать состояние в базу на cancel
ресурса.