MySQL 5.6.14 Source Code Document
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
NdbCondition.h
1
/*
2
Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
3
4
This program is free software; you can redistribute it and/or modify
5
it under the terms of the GNU General Public License as published by
6
the Free Software Foundation; version 2 of the License.
7
8
This program is distributed in the hope that it will be useful,
9
but WITHOUT ANY WARRANTY; without even the implied warranty of
10
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
GNU General Public License for more details.
12
13
You should have received a copy of the GNU General Public License
14
along with this program; if not, write to the Free Software
15
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
16
*/
17
18
#ifndef NDB_CONDITION_H
19
#define NDB_CONDITION_H
20
21
#include "NdbMutex.h"
22
23
#ifdef __cplusplus
24
extern
"C"
{
25
#endif
26
27
struct
NdbCondition
28
{
29
pthread_cond_t cond;
30
};
31
37
struct
NdbCondition
* NdbCondition_Create(
void
);
38
44
int
NdbCondition_Init(
struct
NdbCondition
* p_cond);
45
54
int
NdbCondition_Wait(
struct
NdbCondition
* p_cond,
55
NdbMutex* p_mutex);
56
57
/*
58
* Wait for a condition with timeout, allows a thread to
59
* wait for a condition and atomically releases the associated mutex.
60
*
61
* @param p_cond - pointer to the condition structure
62
* @param p_mutex - pointer to the mutex structure
63
* @param msec - Wait for msec milli seconds the most
64
* @return 0 = succeeded, 1 = failed
65
* @
66
*/
67
int
68
NdbCondition_WaitTimeout(
struct
NdbCondition
* p_cond,
69
NdbMutex* p_mutex,
70
int
msec);
71
/*
72
* same as NdbCondition_WaitTimeout only that
73
* endtime is a absolute time computed using
74
* NdbCondition_ComputeAbsTime
75
*/
76
int
77
NdbCondition_WaitTimeoutAbs(
struct
NdbCondition
* p_cond,
78
NdbMutex* p_mutex,
79
const
struct
timespec
* endtime);
80
85
void
86
NdbCondition_ComputeAbsTime(
struct
timespec
* dst,
unsigned
ms);
87
94
int
NdbCondition_Signal(
struct
NdbCondition
* p_cond);
95
96
103
int
NdbCondition_Broadcast(
struct
NdbCondition
* p_cond);
104
111
int
NdbCondition_Destroy(
struct
NdbCondition
* p_cond);
112
113
#ifdef __cplusplus
114
}
115
#endif
116
117
#endif
118
119
storage
ndb
include
portlib
NdbCondition.h
Generated on Sat Nov 9 2013 01:26:59 for MySQL 5.6.14 Source Code Document by
1.8.1.2