Cette ECUE présente les principales difficultés de la programmation multi-thread et les techniques classiques permettant de développer un code correct et performant. Tout d’abord, les instructions de base liées à la classe Thread en Java sont introduites avec les concepts sous-jacents de ver- rou, de condition et de moniteur. Les notions d’indépendance et d’atomicité conduisent ensuite aux problèmes classiques de synchronisation et de répartition d’une tâche globale en sous-tâches concurrentes.