Optimisation de code en Python : Utiliser asyncio ou threading ?

Python, JavaScript, C, PHP, algorithmes, IDE
la_manon31
Messages : 358
Inscription : jeu. sept. 28, 2023 7:24 pm

Optimisation de code en Python : Utiliser asyncio ou threading ?

Message par la_manon31 »

Bonjour à tous, je travaille sur un projet Python qui nécessite de gérer plusieurs tâches simultanément. J'hésite entre utiliser asyncio ou le module threading. Quelqu’un a-t-il des retours d’expérience ?
Le cloud c'est l'ordi de quelqu'un d'autre
admin_sys_gaming
Messages : 571
Inscription : sam. janv. 20, 2024 7:24 pm

Re: Optimisation de code en Python : Utiliser asyncio ou threading ?

Message par admin_sys_gaming »

Salut ! Pour des tâches I/O bound, asyncio est souvent plus efficace car il évite le surcoût des threads. Par contre, si tu as besoin de CPU intensif, threading peut être plus adapté.
max1965
Messages : 247
Inscription : mer. mai 08, 2024 7:24 pm

Re: Optimisation de code en Python : Utiliser asyncio ou threading ?

Message par max1965 »

Je confirme pour asyncio, surtout si tu utilises des bibliothèques asynchrones comme aiohttp. Par contre, attention, la gestion des erreurs est plus complexe avec asyncio.
Full AMD, full silence
la_manon31
Messages : 358
Inscription : jeu. sept. 28, 2023 7:24 pm

Re: Optimisation de code en Python : Utiliser asyncio ou threading ?

Message par la_manon31 »

Merci pour vos conseils ! Mon projet est surtout axé sur des requêtes HTTP, donc asyncio semble être la meilleure option. Vous avez des ressources pour bien débuter avec ?
Le cloud c'est l'ordi de quelqu'un d'autre
toto_win
Messages : 36
Inscription : dim. déc. 08, 2024 7:24 pm

Re: Optimisation de code en Python : Utiliser asyncio ou threading ?

Message par toto_win »

Le livre "Python Concurrency with asyncio" est vraiment bien pour comprendre les bases et les pièges à éviter. Sinon, la doc officielle est aussi très complète.
Répondre