Réponse rapide
Pour éviter une course critique, on protège les états partagés par synchronisation, files, transactions ou modèle d’acteur et on définit l’ordre, l’exclusion et l’annulation.
Une course peut commander deux fois
Événements simultanés et états partagés peuvent produire double action ou décision périmée. Sérialisez ou protégez les invariants et testez les interleavings.
Identifier le partage
Repérez variables, actionneurs, fichiers, files, horloges et ressources lus ou modifiés par plusieurs réactions.
Imposer un ordre
Verrous courts, messages sérialisés, versions et opérations atomiques empêchent une décision de reposer sur un état intermédiaire.
Tester les interleavings
Variez délais, répétitions, annulations, redémarrages et événements simultanés et vérifiez invariants et état sûr.
Sources et références
- [1] Robotics and Autonomous Systems — NIST