Voir le fichier ford-join.c pour la solution. Cette solution utilise pthread_create pour la creation des threads et pthread_join pour la synchronisation de leur terminaison. Il n'est pas necessaire d'acceder aux matrices temp, Resultat et graphe en exclusion mutuelle car : - Matrice Graphe : c'est une constante. Puisqu'il n'y pas d'ecriture des donnees, il n'est pas necessaire de la proteger par un semaphore - Matrice Resultat : les threads lisent cette matrice mais ne la modifie pas. C'est le thead principal (celui qui execute la fonction main) qui ecrit dans cette matrice. Pas besoin de section critique donc car quand le thread principale modifie cette matrice, les autres threads sont terminees - Matrice temp : chaque thread lit et ecrit dans cette matrice ... mais chacun utilise une ligne differentes ... de sorte que les threads ne manipulent pas les memes donnees. Pas besoin de section critique donc.