Существует несколько способов решения вашей проблемы, и обычно лучший подход - это тот, который достаточно эффективен для вашего варианта использования и достаточно прост для вас.
Если вы хотите использовать другой python script, вы потенциально можете использовать что-то вроде многопроцессорности, хотя использование многопроцессорности связано с большими накладными расходами, и это может быть медленнее, если задача, которую вы выполняете, не требует интенсивного использования ЦП, просто занимает много времени, например, сеть или диск IO. В таких случаях с привязкой к вводу-выводу, asyn c или многопоточность могут быть лучше для вашего варианта использования, asyn c особенно эффективен для таких вещей, и если вы планируете запускать большое количество задач с относительно низкой нагрузкой на ЦП, но с высокой привязкой к вводу-выводу, asyn c отлично подходит для этих сценариев ios. Если вам нужно запустить какую-то внешнюю программу для обработки вашего кода, вы, вероятно, захотите использовать подпроцесс. Вы также можете комбинировать эти подходы, если хотите, используя asyn c для делегирования многопроцессорным интерпретаторам для задач, связанных с ЦП, и стандартный asyn c для задач, привязанных к вводу-выводу, и смешивание некоторых потоков, если у вас есть задача, которая не поддержка python asyn c шаблон хорошо.
Для мониторинга файлов вы также можете посмотреть что-то вроде watchdog для мониторинга файлов с низким уровнем воздействия, например, опрос файла системные изменения происходят медленнее, чем просто пробуждение ОС вашего процесса, когда происходит соответствующее изменение.
Вот несколько ссылок, которые помогут вам начать:
Asyn c
Многопроцессорность
Поток
Подпроцесс