Um thread é um percurso de trabalho dentro de um programa em execução. Um programa pode ter mais do que um thread, o que lhe permite tratar várias atividades sem iniciar um programa completamente separado para cada uma.
Imagine duas pessoas a partilhar uma secretária e as mesmas notas. Uma pode responder ao que acontece no ecrã enquanto a outra trata de uma tarefa em segundo plano.
Os threads partilham partes da memória do programa, o que pode facilitar a troca de informação. Também exige cuidado quando alteram a mesma informação ao mesmo tempo.
