home *** CD-ROM | disk | FTP | other *** search
/ Internet Publisher's Toolbox 2.0 / Internet Publisher's Toolbox.iso / internet / ntserver / wtsource / lock.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-02-16  |  1.5 KB  |  52 lines

  1. /* ----------------------------------------------------------------------------
  2.  
  3.     COPYRIGHT    1989 Thinking Machines Corporation
  4.     AUTHOR        Gordon Linoff
  5.     MODULE        lock.h -- #defines to use lock files
  6.     COMMENTS
  7.         $Header: /usr/users/freewais/FreeWAIS-0.1/ir/lock.h,v 1.1 1993/02/16 15:05:35 freewais Exp $
  8. ---------------------------------------------------------------------------- */
  9.  
  10. /* Copyright (c) CNIDR (see ../COPYRIGHT) */
  11.  
  12.  
  13. #ifndef _LOCK_H_INCLUDED
  14. #define _LOCK_H_INCLUDED
  15.  
  16. #include "cdialect.h"
  17.  
  18. #define INVALID_LOCK          -1
  19. #define LOCK_QUERY             0  /* processing a query */
  20. #define LOCK_UPDATE            1  /* updating database files that
  21.                                    * need exclu access , blocking
  22.                                    * queries */
  23. #define LOCK_DELETE_VERSION    2
  24. #define LOCK_CHECK_POINT       3
  25. #define LOCK_SERVER            4  /* entire server period */
  26. #define LOCK_INDEX             5  /* entire indexing period */
  27. #define NUM_LOCK_TYPES         6
  28.  
  29. extern long utlk_using_lock _AP((char *dbanme, long lock_type));
  30. extern long utlk_unset_lock _AP((char *dbname, long lock_type));
  31. extern long utlk_set_lock _AP((char *dbname, long lock_type));
  32.  
  33.  
  34.  
  35. #ifdef LOCK_STORAGE_MODULE
  36.  
  37. #define IN_LOCK_RANGE(l) ((l >= 0) && (l < NUM_LOCK_TYPES))
  38.  
  39. static char *lock_names[NUM_LOCK_TYPES] = {
  40.     ".query.lock",
  41.     ".update.lock",
  42.     ".delete-version.lock",
  43.     ".check-point.lock",
  44.     ".server.lock",
  45.     ".index.lock"
  46.     };
  47.  
  48.  
  49. #endif  
  50.  
  51. #endif /* #ifndef _LOCK_H_INCLUDED */
  52.