Eintrittsinvarianz
In der Programmierung wird eine Routine bzw. Methode als eintrittsinvariant (englisch reentrant) oder auch wiedereintrittsfähig bezeichnet, wenn sie so implementiert ist, dass sie unterbrochen und von der Unterbrechungsroutine erneut aufgerufen werden kann, und bei der Fortsetzung nach der Unterbrechung das erwartete Ergebnis zurückliefert. Dies schließt nicht nur den Rückgabewert ein, sondern alle durch die Methode beeinflussbaren Programmparameter. Eine reentrante Methode verhält sich daher so, als wäre sie implizit in eine Transaktion gekapselt. Auch ganze Computerprogramme oder Skripte werden unter diesem Gesichtspunkt bewertet.
Für reentrante Methoden gilt oft, dass sich gleichzeitig ausgeführte Instanzen nicht gegenseitig beeinflussen können. Die Ausführung jeder Instanz läuft dann identisch ab, egal wie viele andere Instanzen es noch von dieser Methode gibt. Ziel des Designs für eine solche eintrittsinvariante Methode ist es, sicherzustellen, dass kein Teil des Programmcodes selbst durch die Methode geändert wird und dass prozesseigene Informationen wie beispielsweise lokale Variablen in getrennten Speicherbereichen gehalten werden.
Eintrittsinvariante Programmkonstrukte sind die Basis für viele Multitasking-Systeme (Threadsicherheit).