47 of 59 menu

Curenje memorije

Proces curenja memorije predstavlja postepeno povećanje količine radne memorije koju troši pokrenuti program. Obično je posledica greške u programu, zbog koje se neiskorišćena memorija ne oslobađa.

Posebno su opasna curenja memorije kod programa koji rade dugo vreme bez ponovnog pokretanja. U tom slučaju nakon nekog vremena takav program može da potroši celu dostupnu količinu radne memorije, što će dovesti do hitnog zaustavljanja programa ili, što je još gore, do neispravnog rada.

Postoje sledeći načini za sprečavanje curenja memorije:

  • Primena sakupljača otpada, koji oslobađaju neiskorišćenu memoriju, ali istovremeno uzimaju deo resursa sistema za svoj rad, što dovodi do usporavanja ili zastoja u radu.
  • Ponovno pokretanje programa pomoću spoljašnjeg programa, kao rezultat čega se po završetku rada programa cela memorija vraća sistemu i curenja postaju manjih razmera.
  • Odbacivanje dinamičke alokacije memorije, što sa svoje strane isključuje slične greške, ali i ograničava funkcionalnost programa.
  • Korišćenje vlasničkih pokazivača kako bi se usaglasilo vreme života pokazivača i vreme života objekta na koji on pokazuje. Međutim, ovaj način nije pogodan za ciklične reference između objekata.

Vidite takođe

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij