Многопоточность в Python - зло?

У меня есть многофункциональная программа, которая сильно зависит от времени. Она выполняет разные действия с разными промежутками времени. Для этого я использовал потоки. Например один поток считывает нажатия клавиш клавиатуры каждые 10мс, второй флудит в консоль каждые 10 секунд, третий распознает код на картинке каждую минуту и т.д. Надеюсь вы поняли о чем я. Потоков в сумме где-то 4-6. В общем сидел я на этих потоках, все отлично работает, ошибок и коллизий не выдает - шикарно.

Внезапно где-то вычитал, что потоки в Питоне - не совсем хорошая вещь, что потоков всего можно создать столько, сколько ядер в процессоре, что потоки жрут много памяти, если внутри них бесконечный цикл (контролируемый) и т.д.

Теперь страшно - как реализовать такую задачу (выполнение разных действий через разные промежутки времени) без потоков? Или стоит оставить потоки? А если потоков будет 10? 15? 100?

Заранее спасибо за все ответы и советы :)


Ответы (0 шт):