Reentrant
Af "re", gen-, og "entrant", at træde ind i. En teknik til at dele procedurer på, således at den oversatte kode kun eksisterer i én kopi i arbejdslageret, selv om flere brugere eller processer alle har brug for den. Herved spares plads.
Reentrante programmer skal udformes med stor omhu, idet lokale variable ikke må være fælles for flere parallelle processer, uden at de beskyttes i en kritisk region. Det er derfor nødvendigt med en klar adskillelse af program og data, specielt i programmer skrevet i symbolsk maskinsprog. Dette kan eksempelvis opnås i et segmenteret lager med adskilte program- og datasegmenter eller i visse programmeringssprog, ved at lokale variable har plads på en programuafhængig stak (idet der er én stak pr. proces). Reentrante procedurer er en forudsætning for rekursive kald.
Et sted, hvor reentrante programmer ofte anvendes, er ved interrupts, hvor behandlingen af interruptet bevirker brug af subrutiner i basisprogrammellet, som også kan anvendes af normale brugerprogrammer. Hvis subrutinerne er reentrante, er den fælles brug uproblematisk.

