Mercurial > noffle
view src/itemlist.h @ 165:8ea6b5ddc5a5 noffle
[svn] * src/lock.h,src/lock.c,src/noffle.c: Add lazy lock release. Only release
the lock and close the databases if (a) another process signals us
SIGUSR1 indicating it wants the lock, or (b) it is explicitly requested by
a call to new function Lock_syncDatabases(). When waiting for the lock,
SIGUSR1 the holding process every second. This is all an attempt to
minimise the number of times we need to close and open the database.
When (ha!) the database is replaced by something that can handle
multiple simultaneous writers (with appropriate locking) this won't
be necessary.
author | bears |
---|---|
date | Thu, 25 Jan 2001 13:38:31 +0000 |
parents | 32ba1198c6fa |
children |
line wrap: on
line source
/* itemlist.h Copy a string wiht a list of separated items (as found in several header lines) and provide a convenient way of accessing the individual items. $Id: itemlist.h 51 2000-05-05 23:49:38Z uh1763 $ */ #ifndef ITEMLIST_H #define ITEMLIST_H #if HAVE_CONFIG_H #include <config.h> #endif #include <sys/types.h> struct ItemList; typedef struct ItemList ItemList; /* Make a new item list. */ ItemList * new_Itl( const char *list, const char *separators ); /* Delete an item list. */ void del_Itl( ItemList *self ); /* Get first item. */ const char * Itl_first( ItemList *self); /* Get next item or NULL. */ const char * Itl_next( ItemList *self ); /* Get count of items in list. */ size_t Itl_count( const ItemList *self ); #endif