Что делать с "релизом" от unwrapResumable?
Я написал простой прокси Wai-to-uwsgi, но при этом мне пришлось использовать unwrapResumable
, Это дает развернутый Pipe
и функция "релиз", которую нужно в конце концов вызвать. Тип функции релиза ResourceT IO ()
и я думаю, что хочу зарегистрировать его на моем текущем ресурсе, но для этого мне нужен релиз, чтобы IO ()
, Что я должен делать с функцией выпуска?
1 ответ
Решение
Действие релиза уже должно быть зарегистрировано ResourceT
, В правильном conduit
код, есть два разных способа заботиться о очистке ресурсов:
- В пределах
Pipe
сам. Эта очистка будет вызвана как можно раньше, но она не является безопасной для исключения. - От
ResourceT
, Это исключение безопасно, но может быть отложено.
Действие очистки, предоставляемое unwrapResumable
позволяет вам вернуть "как можно раньше" аспект. Но если бы вы просто вызывали уборку за пределами ResourceT
Блок, нет необходимости беспокоиться об этом в любом случае.