Chapitre 17. Caractéristiques du langage asynchrone
Cet ouvrage a été traduit à l'aide de l'IA. Tes réactions et tes commentaires sont les bienvenus : translation-feedback@oreilly.com
C# offre un support au niveau du langage pour l'utilisation et la mise en œuvre de méthodes asynchrones. Les API asynchrones sont souvent le moyen le plus efficace d'utiliser certains services. Par exemple, la plupart des E/S sont gérées de manière asynchrone à l'intérieur du noyau du système d'exploitation, car la plupart des périphériques, tels que les contrôleurs de disque ou les adaptateurs réseau, sont capables d'effectuer la majorité de leur travail de manière autonome. Ils n'ont besoin de l'intervention de l'unité centrale qu'au début et à la fin de chaque opération.
Bien que de nombreux services proposés par les systèmes d'exploitation soient intrinsèquement asynchrones, les développeurs choisissent souvent de les utiliser par le biais d'API synchrones (c'est-à-dire qui ne reviennent pas tant que le travail n'est pas terminé). Cela peut entraîner un gaspillage de ressources, car cela bloque le fil d'exécution jusqu'à ce que les entrées/sorties soient terminées. Les threads ont des frais généraux, et si tu souhaites obtenir les meilleures performances dans une application hautement concurrente (par exemple, une application Web servant un grand nombre d'utilisateurs), il est généralement préférable d'avoir un nombre relativement faible de threads de système d'exploitation. Idéalement, ton application ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access