Un thread ou fil (traduction normalisés par ISO/CEI 2382-7:2000[1] (autres appellations connues : processus léger, fil d'exécution, fil d'instruction, processus allégé, sous-processus[2], filet d'exécution[3], exétron[2], tâche[réf. nécessaire], voire unité d'exécution[4] ou unité de traitement[5],[6][réf. nécessaire]) est similaire à un processus car tous deux représentent l'exécution d'un ensemble d'instructions du langage machine d'un processeur.
Du point de vue de l'utilisateur, ces exécutions semblent se dérouler en parallèle. Toutefois, là où chaque processus possède sa propre mémoire virtuelle, les threads d'un même processus se partagent sa mémoire virtuelle. En revanche, tous les threads possèdent leur propre pile d'exécution.