Couvre les bases de la programmation parallèle, y compris l'exploitation du parallélisme dans les algorithmes et l'importance d'éviter les conditions de race.
Couvre les bases des opérations atomiques dans la proximité et le parallélisme, y compris les opérations fournies par le matériel et les algorithmes synchronisés.
Explore la sécurité des fils, la synchronisation et les collections simultanées dans Scala, en mettant l'accent sur une implémentation de file d'attente simultanée sans verrou.
Explore l'importance de la concurrence dans l'amélioration des performances et de la réactivité du système, en mettant l'accent sur la nécessité de la synchronisation et de l'atomicité pour prévenir les conditions de course et le non-déterminisme.
Explique le modèle de cohérence séquentiel dans la concordance et le parallélisme, couvrant l'ordre des programmes, l'atomicité et les implications de performance.
Couvre les concepts d'interfaces Comparable et Comparator en Java, en expliquant comment les classes implémentent ces interfaces pour permettre la comparaison d'objets.
Explore l'importance de la synchronisation sans verrouillage pour obtenir une faible latence dans les systèmes distribués et discute des solutions pratiques pour la génération d'identificateurs uniques et les files d'attente de messagerie.
Explore les mécanismes de synchronisation évolutive pour de nombreux systèmes d'exploitation de base, en mettant l'accent sur les défis de la gestion de la croissance des données et des régressions dans le système d'exploitation.
Explore les écueils de concurrence primitives, d'exclusion mutuelle et de synchronisation dans les systèmes d'exploitation, en mettant l'accent sur les variables de condition et les sémaphores.