LINUX.ORG.RU

История изменений

Исправление witaway, (текущая версия) :

В чём проблема с вторым вариантом? Вполне адекватная практика — иметь некий поток, который выполняет инструкции из очереди. Закодить 10 минут.

  1. У вас выполнение операций из очереди не зависит от работы основного потока
  2. У вас всего один поток, который отвечает за все открытия ffmpeg. Получаете больше контроля над работой программы. Ещё немного подпилите — и сможете, например, контролировать количество запущенных дочек.
  3. Умрёт процесс — умрёт тред-обработчик очереди и все дочерние процессы также отвалятся.

Можете ещё эту логику инкапсулировать в какую-нибудь красивую обёртку, чтобы глаз не мозолило.

Исходная версия witaway, :

В чём проблема с вторым вариантом? Вполне адекватная практика — иметь некий поток, который выполняет инструкции из очереди. Закодить 10 минут.

  1. У вас выполнение операций из очереди не зависит от работы основного потока
  2. У вас всего один поток, который отвечает за все открытия ffmpeg. Получаете больше контроля над работой программы. Хотите запускайте всех дочерей сразу по требованию, хотите — запускайте только если старая дочка умерла.
  3. Умрёт процесс — умрёт тред-обработчик очереди и все дочерние процессы также отвалятся.

Можете ещё эту логику инкапсулировать в какую-нибудь красивую обёртку, чтобы глаз не мозолило.