En protråd er en softwarebehandlingsenhed, der leveres af speciel software, der giver dig mulighed for ikke at bruge operativsystemets trådmekanismer , en af formerne for implementering af koroutiner .
Ved at fungere som "lette" tråde, der ikke bruger stakken , giver protothreads en blokerende kontekst på bekostning af at spilde bytes hukommelse pr. tråd. Fordi protothreads ikke bruger stakken, skal du bruge globale variabler for at gemme værdier på tværs af kontekstskifte [1] . Protothreads er ikke-forudsigelige, så kontekstskift er kun muligt ved blokeringsoperationer.
Konceptet med protoflows blev udviklet af Adam Dunkels og Oliver Schmidt [2] . Adskillige forskellige protothreading-biblioteker til C og C++ er blevet implementeret .