Synchronisation de données inter-processus dans les applications audio temps réel: qu'est-ce qui débloque?
Résumé
Cet article expose des considérations pragmatiques pour le développement d'applications audio temps réel. Il passe en revue plusieurs concepts fondamentaux qui doivent être pris en compte lors de l'élaboration de telles applications. En particulier, les applications audio sont intrinsèquement multi-thread et asynchrones, et la synchronisation de ressources partagées entre plusieurs processus concurrents doit donc faire l'objet d'une attention minutieuse. Les concepts exposés ici ne sont pas nouveaux, toutefois leur mise en pratique, dans un contexte concret de production, demeure un défi majeur pour tous les développeurs audio. Enfin, la thèse soutenue dans cette étude est que les mécanismes de synchronisation dits lock-free ne sont généralement pas indispensables et doivent être évités autant que faire se peut. Une approche par mutex non-bloquant est proposée comme substitut simple et satisfaisant.
Origine | Fichiers produits par l'(les) auteur(s) |
---|
Loading...