Spaces:
Running
Running
import threading | |
import time | |
import logging | |
import pipe | |
from io_utils import pop_job_from_pipe | |
is_running = False | |
def start_process_run_job(): | |
try: | |
logging.debug("Running jobs in thread") | |
global thread, is_running | |
thread = threading.Thread(target=run_job) | |
thread.daemon = True | |
is_running = True | |
pipe.init() | |
thread.start() | |
except Exception as e: | |
print("Failed to start thread: ", e) | |
def stop_thread(): | |
logging.debug("Stop thread") | |
global is_running | |
is_running = False | |
def run_job(): | |
global is_running | |
while is_running: | |
try: | |
pop_job_from_pipe() | |
time.sleep(10) | |
except KeyboardInterrupt: | |
logging.debug("KeyboardInterrupt stop background thread") | |
is_running = False | |
break | |