view src/outgoing.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

/*
  outgoing.h

  Collection of posted articles.

  $Id: outgoing.h 51 2000-05-05 23:49:38Z uh1763 $
*/

#ifndef OUT_H
#define OUT_H

#if HAVE_CONFIG_H
#include <config.h>
#endif

#include "common.h"
#include "dynamicstring.h"

Bool
Out_add( const char *serv, const char *msgId, const DynStr *artTxt );

/* Start enumeration. Return TRUE on success. */
Bool
Out_first( const char *serv, Str msgId, DynStr *artTxt );

/* Continue enumeration. Return TRUE on success. */
Bool
Out_next( Str msgId, DynStr *s );

/* Delete article from outgoing collection */
void
Out_remove( const char *serv, const char *msgId );

/* Find server for outgoing message. */
Bool
Out_find( const char *msgId, Str server );

#endif