Hängande pekare

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 5 september 2019; kontroller kräver 3 redigeringar .

En dinglande pekare eller dinglande referens ( eng.  Dingelpekare , vildpekare , dinglande referens ) är en pekare som inte pekar på ett giltigt objekt av motsvarande typ. Detta är ett specialfall av brott mot minnessäkerhet.

Dingelpekare uppstår när ett objekt raderas eller flyttas utan att pekarens värde ändras till null, så att pekaren fortfarande pekar på minnesplatsen där data tidigare lagrades. Eftersom systemet kan omfördela tidigare frigjort minne (inklusive till en annan process), kan en trasig pekare leda till oförutsägbart programbeteende. När ett program skriver data till minnet med hjälp av en sådan pekare kan data i tysthet skadas, vilket leder till subtila buggar som är mycket svåra att hitta.

Den här typen av fel är mycket farligt, och tillsammans med minnesläckor händer det ganska ofta.

Ett antal språk minskar risken för att dingla pekare, särskilt genom att använda automatisk sophämtning [1] eller andra metoder [2] för att förbättra minnessäkerheten .

Anteckningar

  1. Automatisk referensräkning på iOS | Dr Dobbs (inte tillgänglig länk) . Hämtad 17 september 2016. Arkiverad från originalet 16 augusti 2012. 
  2. https://doc.rust-lang.org/nomicon/meet-safe-and-unsafe.html Arkiverad 30 april 2018 på Wayback Machine "Rust. Alla kärnspråk bryr sig om .. Avreferenser null eller dinglande pekare»

Länkar