Lås och nycklar
Lås-och-nycklar är en lösning på dinglande pekare i datorprogrammeringsspråk .
Lås-och-nycklar-metoden representerar pekare som ordnade par (nyckel, adress) där nyckeln är ett heltalsvärde. Heap-dynamiska variabler representeras som lagring för variabeln plus en cell för ett heltalslåsvärde. När en variabel allokeras skapas ett låsvärde som placeras både i variabelns cell och i pekarens nyckelcell. Varje åtkomst till pekaren jämför dessa två värden, och åtkomst tillåts endast om värdena matchar.
När en variabel avallokeras, ändras nyckeln till dess pekare för att hålla ett värde som skiljer sig från variabelns cell. Från och med då kan alla försök att avhänvisa pekaren flaggas som ett fel. Eftersom kopiering av en pekare också kopierar dess cellvärde, inaktiveras alla kopior av pekaren på ett säkert sätt om du ändrar nyckeln för det ordnade paret.
Se även