Kurz erklärt
Ein Thread ist ein eigener Ausführungsstrang innerhalb eines Prozesses. Mehrere Threads laufen scheinbar oder tatsächlich gleichzeitig und teilen sich denselben Speicher.
Genauer
Threads erlauben, Wartezeiten zu überbrücken (Netzwerk, Datei), Rechenarbeit auf mehrere CPU-Kerne zu verteilen und Oberflächen reaktionsfähig zu halten. Der gemeinsame Speicher macht sie mächtig und gefährlich: Ohne Absicherung entstehen Race Conditions und Deadlocks.