X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fzebra-lock.h;h=8725ca4070c9b2a6edfe775965fa540d275f9d4f;hb=df3b590a48c28a89d42f15e8ad8bc9cca0d20e62;hp=ccdd95f23325a0be924e666579dbd7fed9b80cef;hpb=c4b3b6322c32ee380e63ff06cabaad213952c195;p=idzebra-moved-to-github.git diff --git a/include/zebra-lock.h b/include/zebra-lock.h index ccdd95f..8725ca4 100644 --- a/include/zebra-lock.h +++ b/include/zebra-lock.h @@ -1,3 +1,26 @@ +/* $Id: zebra-lock.h,v 1.11 2007-01-15 20:08:24 adam Exp $ + Copyright (C) 1995-2007 + Index Data ApS + +This file is part of the Zebra server. + +Zebra is free software; you can redistribute it and/or modify it under +the terms of the GNU General Public License as published by the Free +Software Foundation; either version 2, or (at your option) any later +version. + +Zebra is distributed in the hope that it will be useful, but WITHOUT ANY +WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +*/ + + #ifndef ZEBRA_LOCK_H #define ZEBRA_LOCK_H @@ -5,7 +28,7 @@ #ifdef WIN32 #include #endif -#if HAVE_PTHREAD_H +#if YAZ_POSIX_THREADS #include #endif @@ -17,12 +40,13 @@ typedef struct { #ifdef WIN32 CRITICAL_SECTION mutex; #else -# if HAVE_PTHREAD_H +# if YAZ_POSIX_THREADS pthread_mutex_t mutex; # else int dummy; # endif #endif + int state; } Zebra_mutex; YAZ_EXPORT int zebra_mutex_init (Zebra_mutex *p); @@ -33,7 +57,7 @@ YAZ_EXPORT int zebra_mutex_unlock (Zebra_mutex *p); typedef struct { int readers_reading; int writers_writing; -#if HAVE_PTHREAD_H +#if YAZ_POSIX_THREADS pthread_mutex_t mutex; pthread_cond_t lock_free; #endif @@ -47,7 +71,7 @@ YAZ_EXPORT int zebra_lock_rdwr_runlock (Zebra_lock_rdwr *p); YAZ_EXPORT int zebra_lock_rdwr_wunlock (Zebra_lock_rdwr *p); typedef struct { -#if HAVE_PTHREAD_H +#if YAZ_POSIX_THREADS pthread_mutex_t mutex; pthread_cond_t cond; #else @@ -65,3 +89,11 @@ YAZ_EXPORT int zebra_mutex_cond_signal (Zebra_mutex_cond *p); YAZ_END_CDECL #endif +/* + * Local variables: + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + * vim: shiftwidth=4 tabstop=8 expandtab + */ +