Introduction à la programmation parallèle - 07 Blocages

I2PP_banner.png












Cet article est la suite de l'article : Introduction à la programmation parallèle - 06 Déroulements aléatoires
La suite de cet article se trouve dans l'article : Introduction à la programmation parallèle - 08 taches OpenMP

Dans la video précédente, nous avons découvert le concept de "race condition", ou le hasard des déroulements d'exécution de différents threads pouvait conduire à des erreurs. Ici nous allons découvrir les blocages (deadlocks).

Un blocage intervient tout simplement lorsque deux threads s'attendent l'un l'autre pour continuer. Soit parce que le code a été écrit avec une logique défaillante, soit parce que le hasard de l'exécution a conduit deux threads dans une situation de blocage.

Vous connaissez le jeu de morpion ? En fonction des premiers mouvements, vous pouvez aboutir à une victoire de l'un (souvent le premier), de l'autre (si le premier joueur a très mal joué), ou un match nul. Un blocage est un peu comme un match nul sauf que votre logiciel va rester bloqué indéfiniment, sans jamais retourner de résultat, s'attendant lui même pour continuer.




Introduction to Parallel Programming : 07... by Intel_Academic_EMEA
Pour de plus amples informations sur les optimisations de compilation, consultez notre Avertissement concernant les optimisations.