Reentrancy

I datavitenskap er reentrancy egenskapen til en funksjon av å være brukbar samtidig av flere brukeroppgaver. Reentrancy gjør det mulig å unngå duplisering i RAM av et program som brukes samtidig av flere brukere. Hvis en funksjon av flere tråder må få tilgang til en global variabel, er det tilstrekkelig å omgi den med Mutexes.

Å skrive reentrant-kode pleide å være En veldig vanskelig oppgave. Det er forenklet med gjeldende språk som tillater:

Den kjerne av et operativsystem har ofte ikke-innadgående deler for å unngå sjenerende komplikasjoner (uoverensstemmelse av kritiske data, tap av ytelse). Skriften av moduler som skal utføres i kjerneplassen forblir av denne grunn delikat.

Reentrance og programmeringsspråk

Den reentrancy av funksjoner er ikke nødvendigvis garantert av alle programmeringsspråk . Dermed vil for eksempel en funksjon skrevet i Ada alltid være reentrant mens en funksjon skrevet i C ikke er som standard . Ikke-reentrancy av en funksjon er sjelden et problem i single-task programmering, men kan gi katastrofale resultater i samtidig programmering .

Forholdet til "trådsikker"

De to begrepene reentrancy og trådsikker gjelder måten funksjoner styrer ressurser på. Begrepet reentrancy har innvirkning på funksjonens eksterne grensesnitt, mens begrepet trådsikkert gjelder koding av funksjonen.

Merk at ingen av disse egenskapene innebærer den andre:

Merknader og referanser

Se også