globus_common
18.15
Toggle main menu visibility
Loading...
Searching...
No Matches
globus_thread_rmutex.h
Go to the documentation of this file.
1
/*
2
* Copyright 1999-2006 University of Chicago
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
21
22
#ifndef GLOBUS_THREAD_RMUTEX_H
23
#define GLOBUS_THREAD_RMUTEX_H
24
25
#include "
globus_common_include.h
"
26
#include "
globus_thread.h
"
27
28
#ifdef __cplusplus
29
extern
"C"
{
30
#endif
31
38
typedef
struct
39
{
40
globus_mutex_t
mutex;
41
globus_cond_t
cond;
42
globus_thread_t
thread_id;
43
int
level;
44
int
waiting;
45
}
globus_rmutex_t
;
46
51
typedef
int
globus_rmutexattr_t
;
52
53
int
54
globus_rmutex_init
(
55
globus_rmutex_t
* rmutex,
56
globus_rmutexattr_t
* attr);
57
58
int
59
globus_rmutex_lock
(
60
globus_rmutex_t
* rmutex);
61
62
int
63
globus_rmutex_unlock
(
64
globus_rmutex_t
* rmutex);
65
66
int
67
globus_rmutex_destroy
(
68
globus_rmutex_t
* rmutex);
69
70
71
#ifdef __cplusplus
72
}
73
#endif
74
#endif
/* GLOBUS_THREAD_RMUTEX_H */
globus_common_include.h
Include System Headers.
globus_thread.h
Globus Threading Abstraction.
globus_rmutex_lock
int globus_rmutex_lock(globus_rmutex_t *rmutex)
Lock a recursive mutex.
Definition
globus_thread_rmutex.c:95
globus_rmutex_destroy
int globus_rmutex_destroy(globus_rmutex_t *rmutex)
Destroy a recursive mutex.
Definition
globus_thread_rmutex.c:184
globus_rmutexattr_t
int globus_rmutexattr_t
Recursive mutex attribute.
Definition
globus_thread_rmutex.h:51
globus_rmutex_unlock
int globus_rmutex_unlock(globus_rmutex_t *rmutex)
Unlock a recursive mutex.
Definition
globus_thread_rmutex.c:141
globus_rmutex_init
int globus_rmutex_init(globus_rmutex_t *rmutex, globus_rmutexattr_t *attr)
Initialize a recursive mutex.
Definition
globus_thread_rmutex.c:43
globus_rmutex_t
Recursive Mutex.
Definition
globus_thread_rmutex.h:39
globus_cond_t
Condition variable.
Definition
globus_thread.h:125
globus_mutex_t
Mutex.
Definition
globus_thread.h:108
globus_thread_t
Thread ID.
Definition
globus_thread.h:72
globus_thread_rmutex.h
Generated by
1.17.0