Chapitre 8. Programmation asynchrone, simultanéité et parallélisme
Cet ouvrage a été traduit à l'aide de l'IA. Tes réactions et tes commentaires sont les bienvenus : translation-feedback@oreilly.com
Jusqu'à présent, dans ce livre, nous avons surtout traité des programmes synchrones, c'est-à-dire des programmes qui prennent des données en entrée, font des choses et s'exécutent jusqu'à la fin en une seule fois. Mais les programmes vraiment intéressants - les éléments constitutifs des applications du monde réel qui effectuent des requêtes sur le réseau, interagissent avec les bases de données et les systèmes de fichiers, répondent aux interactions des utilisateurs, déchargent le travail intensif de l'unité centrale sur des threads distincts - utilisent tous des API asynchrones telles que les rappels, les promesses et les flux.
Ces tâches asynchrones sont celles où JavaScript brille vraiment et se distingue des autres langages multithreads grand public comme Java et C++. Les moteurs JavaScript populaires comme V8 et SpiderMonkey réalisent avec un seul thread ce qui nécessitait traditionnellement plusieurs threads, en faisant preuve d'ingéniosité et en multiplexant les tâches sur un seul thread pendant que d'autres tâches tournent au ralenti. Cette boucle d'événements est le modèle de threading standard des moteurs JavaScript, et celui que nous supposerons que tu utilises. Du point de vue de l'utilisateur final, le fait que ton moteur utilise un modèle à boucle d'événements ou un modèle ...
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