I programmering er en blind-ende-record ( eng. Dead Store ) tildelingen af en værdi til en lokal variabel, hvis denne værdi ikke læses af nogen af de efterfølgende instruktioner. Deadlock-skrivninger optager CPU-tid og hukommelse og gør ingenting. De kan opdages ved hjælp af statisk kodeanalyse .
Et eksempel på kode med en blind vej i Java:
// DeadStoreExample.java import java.util.ArrayList ; import java.util.List ; public class DeadStoreExample { public static void main ( String [] args ) { List < String > list = new ArrayList < String > (); // Denne opgave er en stump, da ArrayList aldrig læses. liste = getList (); System . ud . println ( liste ) } private static List < String > getList () { return new ArrayList < String > ( "hej" ); } }I dette eksempel blev et ArrayList<String>-objekt instansieret, men aldrig brugt. I stedet blev den variabel, der refererede til den, tildelt en reference til et andet objekt. Det hukommelsesområde, der blev tildelt, da ArrayList blev erklæret, skal frigives, for eksempel ved hjælp af skraldeopsamleren .
Et eksempel på kode med en blind vej i JavaScript:
funktion func ( a , b ) { var x ; var i = 300 ; mens ( i -- ) { x = a + b ; // blind vej } }Dette eksempel overskriver den samme lokale variabel flere gange i en loop . Mens kun værdien skrevet ved sidste iteration kan bruges i programmet efter denne løkke . Alt skrivning til x-variablen, bortset fra den sidste, er således blindgyder.
I en optimeringskompiler kan fjernelse af blindgydeposter ske ved at optimere fjernelse af død kode [1] eller ved at optimere fjernelse af blindgængerposter ( eng. Dead Store Elimination ) [2] .