Преимущество использования глобального QTimer
заключается в том, что он будет вызывать все подключенные слоты в строке. Через некоторое время несколько QTimers могут закончиться десинхронизацией, и они могут таймаутировать асинхронно, даже если они были запущены синхронно с тем же интервалом. См Is QTimer smart enough to resynchronize itself
загрузка процессора также может сделать один QTimer
таймаут слишком поздно, поэтому если у вас есть много должны быть синхронными, они могут таймаут асинхронно, если загружена система, имея один QTimer
мог избежать этого (когда он таймаута, все подключенные слоты будут выпущены подряд, без прерывания).
Теперь очевидным преимуществом наличия нескольких QTimers является то, что они могут быть настроены с различными интервалами времени ожидания. И они также могут быть инкапсулированы в многократно используемые автономные модули или классы (было бы сложнее повторно использовать модули или классы в другом проекте, если у них нет их собственных QTimer
и попросить разработчика объявить и установить глобальный, но одноэлементный шаблон может помочь с этим).
Это больше похоже на то, что вам нужно, и как вы хотите его проектировать. Вы можете использовать любой подход, который соответствует вашим текущим требованиям. – PRIME
Определенно да, и именно поэтому я хочу найти плюсы и минусы. как эффективность или что-то еще. – Morris