/ / Les threads Python bloqués peuvent-ils entraver d'autres threads s'il n'y a pas de ressources partagées? - python, multithreading, python-3.x, python-multithreading

Les threads Python bloqués peuvent-ils empêcher d'autres threads s'il n'y a pas de ressources partagées? - python, multithreading, python-3.x, python-multithreading

J'envisage d'utiliser Python pour appeler diversdes dll permettant d’accéder au réseau local (sous Windows) ou aux requêtes HTTP. Ces dll peuvent être mal écrites et rester bloquées. Ma première question est de savoir si l'isolation de ces appels de DLL dans les threads Python garantira que le thread Python principal ne sera pas bloqué? Ma deuxième question est de savoir si Python peut tuer un thread si la DLL est bloquée dans une boucle infinie?

Je sais que je pourrais résoudre ce problème en lançant les dll dans ses propres processus, mais je préférerais ne disposer que d’un seul processus.

Je pourrais utiliser les dernières versions de Python.

Réponses:

1 pour la réponse № 1

Votre thread principal sera toujours réactif si un autre thread émet un appel bloquant. Néanmoins, terminer un fil n'est jamais vraiment propre et peut laisser un désordre. Voir la documentation MSDN pour TerminateThread d'ailleurs.

Avec l'introduction du module de sous-processus, quelles sont vos préoccupations concernant l'utilisation de plusieurs processus?