У меня болит голова, я пытаюсь понять, как бороться с 2 потоками в Python.
Моя идея состояла в том, чтобы создать один поток для мигающих светодиодов, которые имеют бесконечное время l oop, а когда глобальная переменная меняется на True, она начинает мигать et c, но она всегда бесконечно l oop.
другой основной поток будет ожидать мигания сигнала, но также, если сигнал мигает, он сбрасывает глобальный таймер мигания, поэтому он должен находиться в отдельном потоке.
Проблема, с которой я сталкиваюсь, когда запускаю поток светодиодов из основного потока, так как поток светодиодов имеет бесконечное значение l oop, он останавливает работу основного потока дальше, чем flashThread.start()
if __name__ == "__main__":
print('starting main...')
flashThread = threading.Thread(name='SFlashing', daemon = True, target=Flash)
flashThread.start()
while(True):
print('running main...')
time.sleep(2)
оно никогда не достигает running main...
Flash()
просто бесконечно, в то время как l oop и в зависимости от глобальных переменных делает вещи ...