Main Page   Modules   Data Structures   File List   Data Fields   Globals   Related Pages  

gm_hash_segment Struct Reference


Detailed Description

Structure representing a segment of allocated hash table bins. To double the size of the hash table, we allocate a new segment with just enough bins to double the number of bins in the hash table an prepend it to the list of hash segments. This way, we don't have to double-buffer the hash table while growing it, and we can grow the table closer to the limits of available memory. While we sometimes have to walk the O(log(N))-segment list to find a bin, the average lookup only looks at O(2) segments, so operations are still constant-average-time as expected for hash tables.


The documentation for this struct was generated from the following file:
Generated on Mon Nov 3 15:39:26 2003 for GM by doxygen1.2.15