Sterta (informatyka)

Sterta inaczej kopiec lub stóg (ang. heap) to obszar pamięci implementujący strukturę danych o tej samej nazwie. Jej części są udostępniane na wyłączność uruchomianym programom (procesom). Przechowywane są tam dynamicznie tworzone struktury danych[1]. W przeciwieństwie do stosu nie jest uporządkowana ani czyszczona między wywołaniami funkcji[2].

W języku C++ pamięcią na stercie zarządza sam programista. Do przydzielania i zwalniania pamięci na stercie służą odpowiednio operatory new i delete (oraz delete[])[2].

W języku JavaScript obiekty i funkcjealokowane na stercie. W odróżnieniu od typów prostych i referencji, które są przechowywane na stosie. W obu przypadkach silnik JavaScript sam zwalania zasoby, gdy zmienne są już nieużywane. Dzieje się to dzięki odśmiecaniu pamięci[3].

Zobacz też

edytuj

Przypisy

edytuj
  1. s, Stos i sterta (kopiec) – różnice [online], zielware, 12 listopada 2016 [dostęp 2020-01-25] (pol.).
  2. a b Podstawy programowania 7 [online], golinski.faculty.wmi.amu.edu.pl [dostęp 2020-01-25].
  3. Felix Gerschau: JavaScript's Memory Management Explained. [dostęp 2022-05-14].