De plus, si vous utilisez des barrières dans votre code, vous devez inclure cette directive :
```{.c}
```{.language-c}
#define _GNU_SOURCE
```
### Affichage graphique
Pour réaliser le rendu graphique de votre programme, vous **devez** utiliser la librairie `gfx` incluse dans le repository du TP.
Pour réaliser le rendu graphique de votre programme, vous **devez** utiliser la librairie `gfx` incluse dans le repository du TP sous le répertoire `lib`.
Vous y trouverez également un exemple d'affichage dans une fenêtre, ainsi qu'un exemple pour la détection des évenements du clavier et de la souris.
# Travail à rendre
N’oubliez pas de lire attentivement le document "*Consignes Travaux Pratiques.pdf*" disponible sur la page CyberLearn du cours. Les consignes supplémentaires et spécifiques pour ce travail sont les suivantes :
- Ce travail sera réalisé par **groupes de deux**. Si le nombre d'étudiants est impair, il n'y aura qu'un seul groupe de trois.
- Vous serez forcés d'utiliser **git et gitedu.hesge.ch**. Vous devrez "forker" ce repository et suivre à la lettre la procédure contenue dans l'énoncé, sous peine de pénalités. Il est exigé qu'au minimum une version (donc un commit) soit réalisée par séance de TP, et ce jusqu'au rendu du travail.
- Ce travail sera réalisé individuellement.
- Vous devez utiliser **git et gitedu.hesge.ch**. Vous devrez "forker" ce repository et suivre à la lettre la procédure contenue dans l'énoncé, sous peine de pénalités. Il est exigé qu'au minimum une version (donc un commit) soit réalisée par séance de TP, et ce jusqu'au rendu du travail.
- Vous devrez produire un schéma du fil d'exécution et synchronisation entre threads (dans un format d'images usuel), comme illustré à la figure \ref{schema}, qui vous servira de support pour l'interrogation orale (voir le point ci-après), mais qui vous aidera à clarifier le travail à effectuer pour rendre votre code concurrent.
- Le rendu du travail est fixé au **dimanche 9 juin 2019 à 23h30** (la version antérieure ou égale à cette date sera récupérée).
- Suite au rendu, vous devrez effectuer une présentation orale de votre travail le **11 juin 2019**. La note sera une combinaison du code rendu et de la présentation.