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
sync0arr.h
Go to the documentation of this file.
1
/*****************************************************************************
2
3
Copyright (c) 1995, 2009, Oracle and/or its affiliates. All Rights Reserved.
4
5
This program is free software; you can redistribute it and/or modify it under
6
the terms of the GNU General Public License as published by the Free Software
7
Foundation; version 2 of the License.
8
9
This program is distributed in the hope that it will be useful, but WITHOUT
10
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
12
13
You should have received a copy of the GNU General Public License along with
14
this program; if not, write to the Free Software Foundation, Inc.,
15
51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
16
17
*****************************************************************************/
18
19
/**************************************************/
26
#ifndef sync0arr_h
27
#define sync0arr_h
28
29
#include "univ.i"
30
#include "
ut0lst.h
"
31
#include "
ut0mem.h
"
32
#include "
os0thread.h
"
33
35
struct
sync_cell_t
;
37
struct
sync_array_t
;
38
39
/******************************************************************/
42
UNIV_INTERN
43
void
44
sync_array_reserve_cell
(
45
/*====================*/
46
sync_array_t
* arr,
47
void
*
object
,
48
ulint
type
,
49
const
char
*
file
,
50
ulint line,
51
ulint*
index
);
52
/******************************************************************/
57
UNIV_INTERN
58
void
59
sync_array_wait_event
(
60
/*==================*/
61
sync_array_t
* arr,
62
ulint
index
);
63
/******************************************************************/
66
UNIV_INTERN
67
void
68
sync_array_free_cell
(
69
/*=================*/
70
sync_array_t
* arr,
71
ulint
index
);
72
/**********************************************************************/
74
UNIV_INTERN
75
void
76
sync_array_object_signalled
(
void
);
77
/*=============================*/
78
79
/**********************************************************************/
83
UNIV_INTERN
84
void
85
sync_arr_wake_threads_if_sema_free
(
void
);
86
/*====================================*/
87
/**********************************************************************/
90
UNIV_INTERN
91
ibool
92
sync_array_print_long_waits
(
93
/*========================*/
94
os_thread_id_t
* waiter,
95
const
void
** sema)
96
__attribute__((nonnull));
97
/********************************************************************/
100
UNIV_INTERN
101
void
102
sync_array_validate
(
103
/*================*/
104
sync_array_t
* arr);
105
/**********************************************************************/
107
UNIV_INTERN
108
void
109
sync_array_print
(
110
/*=============*/
111
FILE*
file
);
113
/**********************************************************************/
115
UNIV_INTERN
116
void
117
sync_array_init
(
118
/*============*/
119
ulint n_threads);
120
/**********************************************************************/
122
UNIV_INTERN
123
void
124
sync_array_close
(
void
);
125
/*==================*/
126
127
/**********************************************************************/
129
UNIV_INTERN
130
sync_array_t
*
131
sync_array_get
(
void
);
132
/*================*/
133
134
#ifndef UNIV_NONINL
135
#include "sync0arr.ic"
136
#endif
137
138
#endif
storage
innobase
include
sync0arr.h
Generated on Sat Nov 9 2013 01:26:36 for MySQL 5.6.14 Source Code Document by
1.8.1.2