最小可重现示例:
library("shiny")
ui <- fluidPage(
actionButton("button1", "Run 1"),
actionButton("button2", "Run 2")
)
server <- function(session, input, output) {
cat("session starts\n")
observeEvent(input$button1, {
cat("1 starts\n")
Sys.sleep(15)
cat("1 stops\n")
})
observeEvent(input$button2, {
cat("2 starts\n")
Sys.sleep(15)
cat("2 stops\n")
})
}
shinyApp(ui = ui, server = server)
Run Code Online (Sandbox Code Playgroud)
每个按钮都模拟运行一些长时间占用 CPU 的算法。
问题:第二个按钮观察器无法独立启动。它会等到第一个会话中的第一次运行完成。我认为闪亮的会话是独立的。shiny 如何处理每个 R 会话的多个shiny 会话?如果多个用户想要同时连接到应用程序怎么办?
如何处理多个用户同时运行同一个应用程序?谢谢