skipNewList(3) util/skiplist.h skipNewList(3)
NAME
skipNewList - create a skip list.
SYNOPSIS
#include <util/skiplist.h>
NEOERR *skipNewList(skipList *skip, int threaded, int root, int maxLevel,
int flushLimit, skipFreeValue freeValue, void *ctx);
ARGUMENTS
threaded - true if list should be thread-safe.
root - performance parameter (see above).
maxLevel - performance parameter (see above).
flushLimit - max deleted items to keep cached before
forcing a flush.
freeValue - callback made whenever a value is flushed.
ctx - context to pass to <freeValue>.
DESCRIPTION
Returns a new skip list. If <threaded> is true, list is multi-thread safe. <root> and <maxLevel> determine performance and expected size
(see discussion above). <flushLimit> is for threaded lists and determines the maximum number of deleted items to keep cached during con-
current searches. Once the limit is reached, new concurrent reads are blocked until all deleted items are flushed.
MT-Level: Safe.
RETURN VALUE
None.
SEE ALSO
skipDelete(3), skipFreeList(3), skipRelease(3), skipInsert(3), skipSearch(3), skipNext(3), skipNewList
ClearSilver 12 July 2007 skipNewList(3)