advanced
Diagnostic de Conditions de Course
Identifier et résoudre des problèmes de concurrence dans un code multi-threadé.
📝 Treść promptu
Voici un extrait de code Java (ou C++) impliquant des threads multiples accédant à une ressource partagée (un cache en mémoire). Le code présente des comportements imprévisibles en production. Analysez le code pour identifier les conditions de course (race conditions) et les interblocages (deadlocks) potentiels. Proposez une solution utilisant des mécanismes de verrouillage appropriés (mutex, sémaphores, lock-free programming) ou des structures de données concurrentes pour garantir la sécurité des threads sans sacrifier excessivement les performances.