Я создаю блестящее приложение, где я хочу остановить (локальный) сервер, когда клиент закрыт. Простым способом достижения этого является включение этого в функцию shinyServer
:
session$onSessionEnded(function() {
stopApp()
})
Недостатком этого подхода является то, что пользователь решает поразить обновление, затем приложение умирает.
Я пробовал различные обходные пути, используя, например, reactiveTimer
/invalidateLater
для проверки соединений через определенные промежутки времени. Однако они берут ссылку на сеанс (они специфичны для сеанса), и поэтому после onSessionEnded
ничего не будет выполнено.
Есть ли способ иметь "глобальный" таймер сервера, который выполняется регулярно и может проверять наличие активных соединений? Или другой способ добиться автоматического отключения приложения, но который позволяет обновить страницу?