J'ai lu un article très intéressant sur le modèle de programmation threadé par rapport au modèle asynchrone. http://krondo.com/blog/?p=1209
Cependant, l'article mentionne les points suivants.
- Un programme asynchrone surpassera simplement un programme synchrone en passant d'une tâche à l'autre dès qu'il y a une E/S.
- Les threads sont gérés par le système d'exploitation.
Je me souviens avoir lu que les threads sont gérés par le système d'exploitation en déplaçant les TCB entre la file d'attente prête et la file d'attente d'attente (parmi d'autres files). Dans ce cas, les threads ne perdent pas de temps en attente, n'est-ce pas?
À la lumière de ce qui précède, quels sont les avantages des programmes asynchrones par rapport aux programmes threadés?