Is the heap actually a heap?
- by ElectricDialect
In .NET (and Java as far as I know), the area where objects are dynamically allocated is referred to as the managed heap. However, most documentation that describes how the managed heap works depicts it as a linear data structure, such as a linked list or stack.
So, is the managed heap actually a heap, or is it implemented with some other data structure? If it actually does not use a heap data structure, is seems like a significant failure of terminology to overload the meaning of this word.
If it is in fact a heap data structure, what is the value that satisfies the heap property: the size of the allocated memory region?