Liberare la memoria inutilizzata è un grosso problema, causando ritardi GC indesiderati in alcune lingue, vulnerabilità use-after-free in altri e Rust ha una notevole complessità per tentare di risolvere il problema.
Molte applicazioni lato server sono basate su richiesta (o transazione), senza stato condiviso tra le richieste. Un'idea che avevo era che l'allocazione della memoria potesse essere basata su richieste / transazioni. In parole povere, ogni allocazione è associata a una richiesta e al termine della richiesta vengono liberate le allocazioni associate. Ciò fornirebbe la gestione automatica della memoria dal punto di vista dell'applicazione, senza ritardi GC.
Questo approccio è stato tentato in tutti i sistemi del mondo reale? Quali sono i potenziali limiti?