Si j'ai bien compris la question :
Les threads permettent à un PC d'effectuer des tâches en parallèles (d'autant qu'il y a de Threads).
Par exemple si tu veux faire 2+5 et 4 + 6
Sans les threads
1. 2+5 (thread0)
2. 4+5 (thread0)
Avec les threads
1. 2+5 (thread0) et 4+6(thread1)
Le concept de concurrence est fortement lié car admettons que tu travaille avec deux threads :
par exemple ton thread0 modifie la valeur a et EN MEME TEMPS thread1 lis la donnée : thread1 va potentiellement lire une donnée erronée (la valeur de a avant la modification par thread0)
Egalement, tu peux avoir des interblocages, c'est le plus "grave" et le plus connu
Cette image expliquera mieux que moi 
