Resize hash

Purpose: Resize hash table.

 resize-hash <hash> hash-size <new size>

resize-hash will resize <hash> table (created by new-hash) to size <new size>, which refers to the number of "buckets", or possible hash codes derived from keys stored.

When a number of elements stored grows, the search performance may decline if hash size remains the same. Consequently, if the number of elements shrinks, the memory allocated by the hash may be wasted. Use get-hash to obtain its current hash-size, its length (the number of elements currently stored in it) and the statistics (such as average reads) to determine if you need to resize it.

Resizing is generally expensive, so it should not be done too often, and only when needed. The goal is to amortize this expense through future gain of lookup performance. For that reason it may be better to resize proportionally (i.e. by a percentage), unless you have a specific application reason to do otherwise, or to avoid exponential growth.
Examples
 resize-hash h hash-size 100000

See also
Hash
get-hash  
new-hash  
purge-hash  
read-hash  
resize-hash  
write-hash  
See all
documentation


Copyright (c) 2019-2025 Gliim LLC. All contents on this web site is "AS IS" without warranties or guarantees of any kind.