Go Language Memory Management and Garbage Collection: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 14: Line 14:
=Garbage Collection=
=Garbage Collection=
Garbage collector is a subsystem of the [[Programming Languages Concepts#Interpreter|interpreter]] that handles de-allocation of memory that is not needed by the program anymore. Garbage collectors can naturally assist interpreted languages, because there is an interpreter. Go is a compiled language, but is different in this respect: it does have garbage collection built into it.
Garbage collector is a subsystem of the [[Programming Languages Concepts#Interpreter|interpreter]] that handles de-allocation of memory that is not needed by the program anymore. Garbage collectors can naturally assist interpreted languages, because there is an interpreter. Go is a compiled language, but is different in this respect: it does have garbage collection built into it.
The Go compiler decides where a variable is allocated: on the [[#Stack|stack]] or on the [[#Heap|heap]].

Revision as of 22:48, 18 August 2023

External

Internal

TODO

To deplete, merge and delete this: Go Concepts - Memory Model

Overview

Stack

Heap

Variable Deallocation

Aslo see:

Variables

Garbage Collection

Garbage collector is a subsystem of the interpreter that handles de-allocation of memory that is not needed by the program anymore. Garbage collectors can naturally assist interpreted languages, because there is an interpreter. Go is a compiled language, but is different in this respect: it does have garbage collection built into it.

The Go compiler decides where a variable is allocated: on the stack or on the heap.