Boucle d’événements et microtâches
Comprendre comment Dart planifie le travail asynchrone
Boucle d’événements et microtâches est une leçon Dart Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Dart Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Dart Academy comprend 4 leçons au total.
Un seul fil, aucune attente
Dart exécute votre code sur un seul fil d'exécution, sans jamais se figer. Le secret réside dans la boucle d'événements, qui planifie le travail au lieu de le bloquer. ⚡
Le rôle de la boucle d'événements
La boucle d'événements suit un cycle simple : choisir la prochaine tâche en attente, l'exécuter jusqu'à son terme, puis recommencer. Votre code s'exécute par blocs nets et ininterrompus.
Le synchrone d'abord
Tout votre code simple, exécuté de haut en bas, s'exécute en premier. Ce n'est qu'une fois ce travail synchrone terminé que la boucle commence à gérer les tâches planifiées.
Deux files d'attente
La boucle puise dans deux files : la file des microtâches et la file d'événements. Les microtâches passent toujours avant les événements.
La file des microtâches
Une microtâche est un petit travail différé, comme le rappel d'un Future terminé. La boucle vide toutes les microtâches avant de toucher à la file d'événements.
La file d'événements
La file d'événements contient des éléments plus importants : minuteries, lectures de fichiers, appuis et réponses réseau. Ils attendent que toutes les microtâches soient terminées.
Planifier une microtâche
Vous pouvez transmettre du travail à la file des microtâches avec scheduleMicrotask. Il s'exécute après le code courant, mais avant tout événement.
scheduleMicrotask(() => print("microtask"));
print("right now");Planifier un événement
Une minuterie (ou Future.delayed avec zéro) place un rappel dans la file d'événements ; il s'exécute donc après toutes les microtâches en attente.
Timer.run(() => print("event"));
print("right now");Les microtâches passent en premier
Si les deux types sont en file d'attente, la microtâche s'exécute en premier. Cet ordre rend les chaînes de Future rapides et prévisibles.
scheduleMicrotask(() => print("A"));
Timer.run(() => print("B"));
// prints A then BPourquoi l'exécution reste fluide
Comme chaque tâche s'exécute jusqu'à son terme, votre application ne se met jamais à jour à moitié. La boucle maintient une interface réactive sans manipulation manuelle des fils d'exécution.
Ne bloquez pas la boucle
Inonder la file des microtâches peut bloquer les événements indéfiniment et figer les entrées. Gardez les microtâches courtes et laissez les événements passer à leur tour.
Vérification rapide
Vérification rapide de l'ordre des files d'attente.
Récapitulatif : la boucle d'événements
Vous avez appris que la boucle d'événements exécute d'abord le code synchrone, puis vide les microtâches et enfin traite les événements. Cet ordre permet à Dart de rester monofil tout en étant fluide. 🎉
Questions Fréquemment Posées
La leçon « Boucle d’événements et microtâches » est-elle gratuite ?
Oui — le texte complet de « Boucle d’événements et microtâches » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Dart Academy, passe à CoddyKit PRO. Le cours Dart Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Boucle d’événements et microtâches » ?
Comprendre comment Dart planifie le travail asynchrone Tu pratiques Dart Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Dart Academy ?
Aucune expérience préalable n'est requise. Dart Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Boucle d’événements et microtâches » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Dart Academy ?
Oui. Chaque leçon Dart Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Boucle d’événements et microtâches
- Créer et attendre des Futures
- Gestion des erreurs dans le code asynchrone
- Future.wait et travail parallèle