Python: приостановить некоторые действия, но разрешить выполнение других частей кода
У меня есть скрипт Python 3, работающий на Raspberry Pi (Buster), который записывает некоторые данные прибора на мой дисплей Nextion, используя последовательный интерфейс / интерфейс UART. На данный момент я настроил свой код на спящий режим в течение 5 минут после отображения текущих данных. Это работает.
Дисплей Nextion чувствителен к прикосновениям, поэтому, если я прикоснусь к нему, он отправит строку последовательных данных, которую можно прочитать с помощью моего сценария, и сообщит мне, где на экране он был затронут.
Теперь я хотел бы изменить свой код так, чтобы он реагировал на сенсорный экран даже в период сна. Я мог бы поместить программу в жесткий цикл вместо использования time.sleep(300) и проверить прошедшее время и прочитать последовательный порт во время каждого цикла. Для меня это звучит так, как будто я перегружаю Pi и трачу циклы процессора. Есть ли лучший способ приостановить определенные разделы кода, позволяя продолжить выполнение других?