Share same dashboard between multiple users

I’ve made a monitoring program to monitor my servers by using Visdom. It’ve been working quite well.

Now, I’m trying to implement the monitor by Streamlit.
The monnitor works by using a endless loop with a time.sleep. (st.rerun with a sleep also works).
However, the main issue is that when user open a new session, a new loop will be created and never end then. Is there any solution to terminate the newly created session? Or prevent creating a new session, just use the existed one.

Simple dashboard snippet is shown below:

import streamlit as st
import time
import random
from streamlit.runtime.scriptrunner import get_script_run_ctx

# values cannot be used in st.session_state!!
if 'my_values' not in st.session_state:
    st.session_state.my_values = list()

if not st.session_state.my_values:

new_value = st.session_state.my_values[-1] + random.randrange(-100, 100) / 100


ctx = get_script_run_ctx()
print(ctx.session_id)  #<- print session-id endlessly

Thank you so much.