Minor fixes
[csql.git] / include / Mutex.h
blob29d41c332ffd1731e584b7f79a97bda041d0db33
1 /***************************************************************************
2 * Copyright (C) 2007 by www.databasecache.com *
3 * Contact: praba_tuty@databasecache.com *
4 * *
5 * This program is free software; you can redistribute it and/or modify *
6 * it under the terms of the GNU General Public License as published by *
7 * the Free Software Foundation; either version 2 of the License, or *
8 * (at your option) any later version. *
9 * *
10 * This program is distributed in the hope that it will be useful, *
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
13 * GNU General Public License for more details. *
14 * *
15 ***************************************************************************/
16 #ifndef MUTEX_H
17 #define MUTEX_H
18 #include<os.h>
19 #if defined(sparc)
20 typedef unsigned char Lock;
21 #elif defined (i686)
22 typedef unsigned int Lock;
23 #endif
24 class Mutex
27 #if defined(sparc) || defined(i686)
28 Lock lock;
29 #else
30 pthread_mutex_t mutex_;
31 #endif
32 public:
33 Mutex();
34 int init();
35 int getLock();
36 int tryLock(int tries=5, int waitmsecs=10);
37 int releaseLock();
38 int destroy();
41 #endif