Я использую scala rx
для приложения. У меня есть реактивная переменная, содержащая File
(это файл PDF). Я использую библиотеку для вывода страниц из этого файла PDF на экран. Теперь библиотека PDF, которую я использую, дает мне объект (назовем его Doc
), который я могу использовать для рендеринга отдельных страниц. Но чтобы отобразить страницу из объекта Doc
, объект Doc
должен быть открыт (таким образом, ресурс должен быть получен).
Прямо сейчас я загружаю файл PDF для каждой страницы, которую я отображаю заново (создавая новый объект Doc
и закрывая его после рендеринга одной страницы). Это делает рендеринг страницы функциональным (данный файл и номер страницы возвращают изображение).
Есть ли способ цепляться к открытому ресурсу и закрывать его при изменении в FRP вообще и для scala rx
в частности? Как можно было бы справиться с этой очень распространенной ситуацией?