Comment puis-je obtenir un socket connect () non bloquant?

J'ai un assez simple problème ici. J'ai besoin de communiquer avec un grand nombre d'hôtes simultanément, mais je n'ai pas vraiment besoin d'une synchronisation parce que chaque demande est assez suffisant.

À cause de cela, j'ai choisi de travailler avec des sockets asynchrones, plutôt que de spammer les threads.
Maintenant j'ai un petit problème:

Async ça marche comme un charme, mais lorsque je me connecte à 100 hôtes, et je reçois 100 délais d'attente (timeout = 10 secondes), puis-je attendre de 1000 secondes, juste pour trouver toutes mes connexions échoué.

Est-il possible également d'obtenir non blocage de la douille se connecte?
Mon socket est déjà réglé à non bloquantes, mais les appels à connect() sont toujours de blocage.

Réduction du délai d'attente n'est pas une solution acceptable.

Je le fais en Python, mais je suppose que le langage de programmation ne marche pas vraiment d'importance dans ce cas.

Ai-je vraiment besoin d'utiliser des threads?

source d'informationauteur Tom