Allocating and Deallocating Memory within ACIS
List of: Discussion Topic
Subjects: Memory Management
Contents: Application Development Manual

Allocating heap memory and deallocating it properly is critical to any application. Within ACIS, this is especially true for a number of reasons:

There are a number of platforms which manage heap memory differently. When allocations/deallocations are done incorrectly, some platforms crash, some platforms leak, and others proceed silently.
ACIS has the ability to manage small blocks of heap memory - which we call freelisting. Freelisting is a heap management algorithm that provides a substantial performance increase - and is transparent to the end user. If the ACIS allocation/deallocation rules are not followed, a block might taken from the freelist and freed by the OS, or vice versa, which will almost always result in a crash.
ACIS also has the ability to track all heap allocations and deletions. If the ACIS allocation/deallocation rules are not followed, some allocations show up as memory leaks - when they simply aren't being freed properly.
PDF/APPDEV/05MEM.PDF
HTM/DATA/ACIS/APPDEV/05MEM/0000.HTM