Buy the book!
|[ < ]||[ > ]||[ << ]||[ Up ]||[ >> ]||[Top]||[Contents]||[Index]||[ ? ]|
An obstack is a pool of memory containing a stack of objects. You can create any number of separate obstacks, and then allocate objects in specified obstacks. Within each obstack, the last object allocated must always be the first one freed, but distinct obstacks are independent of each other.
Aside from this one constraint of order of freeing, obstacks are totally general: an obstack can contain any number of objects of any size. They are implemented with macros, so allocation is usually very fast as long as the objects are usually small. And the only space overhead per object is the padding needed to start each object on a suitable boundary.
18.104.22.168 Creating Obstacks How to declare an obstack in your program. 22.214.171.124 Preparing for Using Obstacks Preparations needed before you can use obstacks. 126.96.36.199 Allocation in an Obstack Allocating objects in an obstack. 188.8.131.52 Freeing Objects in an Obstack Freeing objects in an obstack. 184.108.40.206 Obstack Functions and Macros The obstack functions are both functions and macros. 220.127.116.11 Growing Objects Making an object bigger by stages. 18.104.22.168 Extra Fast Growing Objects Extra-high-efficiency (though more complicated) growing objects. 22.214.171.124 Status of an Obstack Inquiries about the status of an obstack. 126.96.36.199 Alignment of Data in Obstacks Controlling alignment of objects in obstacks. 188.8.131.52 Obstack Chunks How obstacks obtain and release chunks; efficiency considerations. 184.108.40.206 Summary of Obstack Functions
|webmaster||delorie software privacy|
|Copyright © 2003 by The Free Software Foundation||Updated Jun 2003|