Alokator stosowy (stack allocator)
Alokator, który przydziela pamięć przesuwając wskaźnik do przodu, a zwalnia cofając go do zapamiętanego znacznika — ściśle w kolejności LIFO.
Zamiast prosić system operacyjny o każdy blok, alokator stosowy rezerwuje jeden ciągły bufor i „przydziela” pamięć, przesuwając wskaźnik szczytu. Aby ją oddać, zapamiętujesz wcześniej pozycję znacznika i cofasz wskaźnik do niej — wszystko, co przydzielono potem, zostaje zwolnione naraz. Działa w O(1) i w ogóle nie powoduje fragmentacji.
Ceną jest dyscyplina: zwalniać trzeba w odwrotnej kolejności niż się przydzielało, dokładnie jak stos wywołań. Wzorzec jest więc idealny do tymczasowej pamięci roboczej w obrębie klatki i nie nadaje się do obiektów o nieprzewidywalnym czasie życia. Pokrewny alokator arenowy zwalnia wszystko jednym ruchem, a alokator pulowy wydaje bloki stałego rozmiaru w dowolnej kolejności.