5.5. Modules Anaconda et bibliothèque D-Bus
Les modules d'Anaconda fonctionnent comme des processus indépendants. Pour communiquer avec ces processus via leur API D-Bus
, utilisez la bibliothèque dasbus
.
Les appels aux méthodes via l'API D-Bus
sont asynchrones, mais la bibliothèque dasbus
vous permet de les convertir en appels de méthodes synchrones en Python. Vous pouvez également écrire l'un des programmes suivants :
- programme avec des appels asynchrones et des gestionnaires de retour
- Un programme avec des appels synchrones qui fait attendre l'appelant jusqu'à ce que l'appel soit terminé.
Pour plus d'informations sur les threads et la communication, voir Communication entre les threads Anaconda.
En outre, Anaconda utilise des objets Task fonctionnant dans des modules. Les tâches ont une API D-Bus
et des méthodes qui sont automatiquement exécutées dans des threads supplémentaires. Pour exécuter les tâches avec succès, utilisez les fonctions d'aide sync_run_task
et async_run_task
.