Многопоточность python сервера и while
Подскажите, пожалуйста, как возможно организовать работу сервера и одновременную проверку условия в цикле while? Ожидается Py сервер на flask, принимающий JSON из другого py скрипта, и проверяющий его на равенство предыдущему. Затем через сокеты передающий этот JSON в javascript для визуализации. Подскажите, пожалуйста, как можно это сделать?
while (333):
tempJSON=subprocess.check_output(['/var/www/html/socket/commLobby.py'],
universal_newlines=True)
if (tempJSON != jsonIn):
jsonIn=tempJSON
print("there ", jsonIn)
""""""""""""""""""
if __name__ == '__main__':
eventlet.wsgi.server(eventlet.listen(('', 8001)), app)
Ответы (1 шт):
Если вы хотите остаться в одном процессе, можно попробовать поработать с модулем Threads, но из-за блокировки интерпретатора, скорее всего будут проблемы (к примеру цикл будет периодически стоять или вообще не сможет работать).
Остается только сделать суб-процесс модулем multiprocessing (запускать второй процесс одновременно с процессом сервера) и в нем запускать цикл while.