Un interblocage se détecte en cherchant un cycle dans le graphe d'attente, où une flèche signifie « attend une ressource détenue par ».
Le graphe
orienté
T1 -> T2
T2 -> T3
T3 -> T1
T4 -> T1
titre: Le graphe d'attente. Une flèche signifie « attend une ressource détenue par ».
Objectif
Donner la longueur du cycle, le nombre de threads bloqués, ceux qui le sont sans appartenir au cycle, puis conclure sur l'effet d'un déblocage.
Pièges
T4 est bloqué et n'appartient pas au cycle. Il attend une ressource détenue par un thread lui-même bloqué : c'est une conséquence de l'interblocage, pas sa cause. Chercher la cause du côté de T4 ne mènerait nulle part.