Currently i'm trying to use proper threading to execute a bunch of scripts.
They are sorted like that: Main Thread (Runs the Flask app) -Analysis Thread (Runs the analysis script which invokes all needed scripts) -3 different functions executed as thread (Divided in 3 parts so the analysis runs quicker)
My problem is i have a global variable with the analysis thread to be able to determine after the call wether the thread is running or not. The first time it does start and running just fine. Then you can call that endpoint as often as you like it wont do anything because i return a 423 to state that the thread (the analysis) is still running. After all scripts are finished, the if clause with analysis_thread.isAlive()
returns false as it should and tries to start the analysis again with analysis_thread.start()
but that doesn't work, it throws an exception saying the thread is already active and can't be started twice.
Is there a way to achieve that the script can be started and while it is running it returns another code but when it is finished i can start it again ?
Thanks for reading and for all your help
Christoph