Je dois écrire un script de transcodage qui émet une commande ffmpeg
appropriée s'il y a des ressources disponibles sur un ordinateur Mac. La machine est un 6-Core 2 x 2,66 GHz. Fondamentalement, la logique que je veux employer est:Vérifier les cœurs de traitement disponibles
[cron every x minutes]
if available_cores:
pull front file in queue and transcode
else:
pass
Comment pourrais-je vérifier s'il y a des unités de traitement disponibles pour exécuter ffmpeg
?
Cela semble être une bonne idée. Pourriez-vous s'il vous plaît me montrer un exemple de code approximatif de la façon dont la file d'attente basée sur la moyenne de charge fonctionnerait? – David542
@ David542, comme vous avez besoin de mettre en file d'attente un travail (une ligne de commande, dans notre cas 'ffmpeg'), juste ajouter" batch "à celui-ci. 'batch' (ou plutôt' atrun' ou 'launchd') vérifiera périodiquement la moyenne de la charge et si elle est inférieure à un seuil, appelez la commande en file d'attente et répétez. Les résultats stdout & stderr sont envoyés par e-mail à l'utilisateur Unix (mais généralement le travail gérera la sortie du journal). La configuration du seuil de charge moyenne est généralement spécifique à Unix. – Xailor