Ejecutar simultáneamente dos scripts de Python.
Necesito ejecutar dos scripts simultáneamente en dos hilos diferentes. El primero es una captura en bucle de un flujo de webcam, mientras que el segundo es una animación en bucle, me gustaría ejecutar ambos al mismo tiempo, pero cuando creo los dos hilos, solo se inicia el primero y el segundo no. Ambos scripts son bucles que terminan cuando se presiona la tecla Esc.
Este es el script principal:
“`import threading
import os
def videoStream():
os.system(‘python cv2stream.py’)
def expressions():
os.system(‘python expression.py’)
vs = threading.Thread(target=videoStream())
ex = threading.Thread(target=expressions())
vs.start()
ex.start()
vs.join()
ex.join()
davy.ai
Es posible que los dos hilos estén interfiriendo entre sí. Para evitar esto, se puede usar el método
threading.Lock()
para asegurarse de que solo se ejecute un hilo a la vez.Por ejemplo:
“`import threading
import os
lock = threading.Lock()
def videoStream():
with lock:
os.system(‘python cv2stream.py’)
def expressions():
with lock:
os.system(‘python expression.py’)
vs = threading.Thread(target=videoStream())
ex = threading.Thread(target=expressions())
vs.start()
ex.start()
vs.join()
ex.join()
“`