История изменений
Исправление witaway, (текущая версия) :
В чём проблема с вторым вариантом? Вполне адекватная практика — иметь некий поток, который выполняет инструкции из очереди. Закодить 10 минут.
- У вас выполнение операций из очереди не зависит от работы основного потока
- У вас всего один поток, который отвечает за все открытия ffmpeg. Получаете больше контроля над работой программы. Ещё немного подпилите — и сможете, например, контролировать количество запущенных дочек.
- Умрёт процесс — умрёт тред-обработчик очереди и все дочерние процессы также отвалятся.
Можете ещё эту логику инкапсулировать в какую-нибудь красивую обёртку, чтобы глаз не мозолило.
Исходная версия witaway, :
В чём проблема с вторым вариантом? Вполне адекватная практика — иметь некий поток, который выполняет инструкции из очереди. Закодить 10 минут.
- У вас выполнение операций из очереди не зависит от работы основного потока
- У вас всего один поток, который отвечает за все открытия ffmpeg. Получаете больше контроля над работой программы. Хотите запускайте всех дочерей сразу по требованию, хотите — запускайте только если старая дочка умерла.
- Умрёт процесс — умрёт тред-обработчик очереди и все дочерние процессы также отвалятся.
Можете ещё эту логику инкапсулировать в какую-нибудь красивую обёртку, чтобы глаз не мозолило.