This file is indexed.

/usr/share/gtk-doc/html/libgda-4.0/libgda-4.0-GdaMutex.html is in libgda-4.0-doc 4.2.8-2build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GdaMutex</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="index.html" title="GNOME Data Access 4 manual">
<link rel="up" href="multi-threading.html" title="Multi threading">
<link rel="prev" href="multi-threading.html" title="Multi threading">
<link rel="next" href="GdaLockable.html" title="GdaLockable">
<meta name="generator" content="GTK-Doc V1.17 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="multi-threading.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="multi-threading.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GNOME Data Access 4 manual</th>
<td><a accesskey="n" href="GdaLockable.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#libgda-4.0-GdaMutex.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#libgda-4.0-GdaMutex.description" class="shortcut">Description</a>
</td></tr>
</table>
<div class="refentry">
<a name="libgda-4.0-GdaMutex"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="libgda-4.0-GdaMutex.top_of_page"></a>GdaMutex</span></h2>
<p>GdaMutex — Recursive mutex implementation</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="libgda-4.0-GdaMutex.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">                    <a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex">GdaMutex</a>;
<a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="returnvalue">GdaMutex</span></a> *          <a class="link" href="libgda-4.0-GdaMutex.html#gda-mutex-new" title="gda_mutex_new ()">gda_mutex_new</a>                       (<em class="parameter"><code><span class="type">void</span></code></em>);
<span class="returnvalue">void</span>                <a class="link" href="libgda-4.0-GdaMutex.html#gda-mutex-lock" title="gda_mutex_lock ()">gda_mutex_lock</a>                      (<em class="parameter"><code><a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a> *mutex</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="libgda-4.0-GdaMutex.html#gda-mutex-trylock" title="gda_mutex_trylock ()">gda_mutex_trylock</a>                   (<em class="parameter"><code><a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a> *mutex</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="libgda-4.0-GdaMutex.html#gda-mutex-unlock" title="gda_mutex_unlock ()">gda_mutex_unlock</a>                    (<em class="parameter"><code><a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a> *mutex</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="libgda-4.0-GdaMutex.html#gda-mutex-free" title="gda_mutex_free ()">gda_mutex_free</a>                      (<em class="parameter"><code><a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a> *mutex</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="libgda-4.0-GdaMutex.description"></a><h2>Description</h2>
<p>
  <a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a> implements a recursive mutex (unlike the <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#GMutex"><span class="type">GMutex</span></a> implementation which offers no
  guarantee about recursiveness). A recursive mutex is a mutex which can be locked several
  times by the same thread (and needs to be unlocked the same number of times before
  another thread can lock it).
</p>
<p>
  A <a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a> can safely be used even in a non multi-threaded environment in which case
  it does nothing.
</p>
</div>
<div class="refsect1">
<a name="libgda-4.0-GdaMutex.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="GdaMutex"></a><h3>GdaMutex</h3>
<pre class="programlisting">typedef struct _GdaMutex GdaMutex;</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2">
<a name="gda-mutex-new"></a><h3>gda_mutex_new ()</h3>
<pre class="programlisting"><a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="returnvalue">GdaMutex</span></a> *          gda_mutex_new                       (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>
Creates a new <a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a>.
</p>
<p>
Note: Unlike <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#g-mutex-new"><code class="function">g_mutex_new()</code></a>, this function will return <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#g-thread-init"><code class="function">g_thread_init()</code></a> has not been called yet.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a new <a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a>. <span class="annotation">[<a href="http://foldoc.org/transfer%20full"><span class="acronym">transfer full</span></a>]</span>
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gda-mutex-lock"></a><h3>gda_mutex_lock ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gda_mutex_lock                      (<em class="parameter"><code><a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a> *mutex</code></em>);</pre>
<p>
Locks <em class="parameter"><code>mutex</code></em>. If <em class="parameter"><code>mutex</code></em> is already locked by another thread, the current thread will block until <em class="parameter"><code>mutex</code></em> is unlocked by the other thread.
</p>
<p>
This function can be used even if <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#g-thread-init"><code class="function">g_thread_init()</code></a> has not yet been called, and, in that case, will do nothing.
</p>
<p>
Note: unlike <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#g-mutex-lock"><code class="function">g_mutex_lock()</code></a>, the <a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a> is recursive, which means a thread can lock it several times (and has
to unlock it as many times to actually unlock it).
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>mutex</code></em> :</span></p></td>
<td>a <a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a>
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gda-mutex-trylock"></a><h3>gda_mutex_trylock ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gda_mutex_trylock                   (<em class="parameter"><code><a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a> *mutex</code></em>);</pre>
<p>
Tries to lock <em class="parameter"><code>mutex</code></em>. If <em class="parameter"><code>mutex</code></em> is already locked by another thread, it immediately returns FALSE.
Otherwise it locks <em class="parameter"><code>mutex</code></em> and returns TRUE
</p>
<p>
This function can be used even if <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#g-thread-init"><code class="function">g_thread_init()</code></a> has not yet been called, and, in that case, will immediately return TRUE.
</p>
<p>
Note: Unlike <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#g-mutex-trylock"><code class="function">g_mutex_trylock()</code></a>, the <a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a> is recursive, which means a thread can lock it several times (and has
to unlock it as many times to actually unlock it)
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>mutex</code></em> :</span></p></td>
<td>a <a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>TRUE, if <em class="parameter"><code>mutex</code></em> could be locked.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gda-mutex-unlock"></a><h3>gda_mutex_unlock ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gda_mutex_unlock                    (<em class="parameter"><code><a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a> *mutex</code></em>);</pre>
<p>
Unlocks <em class="parameter"><code>mutex</code></em>. If another thread is blocked in a <a class="link" href="libgda-4.0-GdaMutex.html#gda-mutex-lock" title="gda_mutex_lock ()"><code class="function">gda_mutex_lock()</code></a> call for <em class="parameter"><code>mutex</code></em>, it wil
be woken and can lock <em class="parameter"><code>mutex</code></em> itself.
This function can be used even if <a href="http://library.gnome.org/devel/glib/unstable/glib-Threads.html#g-thread-init"><code class="function">g_thread_init()</code></a> has not yet been called, and, in that case, will do nothing.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>mutex</code></em> :</span></p></td>
<td>a <a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a>
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gda-mutex-free"></a><h3>gda_mutex_free ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gda_mutex_free                      (<em class="parameter"><code><a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a> *mutex</code></em>);</pre>
<p>
Destroys <em class="parameter"><code>mutex</code></em>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>mutex</code></em> :</span></p></td>
<td>a <a class="link" href="libgda-4.0-GdaMutex.html#GdaMutex" title="GdaMutex"><span class="type">GdaMutex</span></a>. <span class="annotation">[<a href="http://foldoc.org/transfer%20full"><span class="acronym">transfer full</span></a>]</span>
</td>
</tr></tbody>
</table></div>
</div>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.17</div>
</body>
</html>