/usr/share/doc/libgnomevfs2-common/html/gnome-vfs-2.0-gnome-vfs-cancellation.html is in libgnomevfs2-dev 1:2.24.4-1ubuntu2.
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 182 183 184 185 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Cancellation</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
<link rel="home" href="index.html" title="GnomeVFS - Filesystem Abstraction library">
<link rel="up" href="gnome-vfs-file-async-ops.html" title="Asynchronous Operations">
<link rel="prev" href="gnome-vfs-2.0-gnome-vfs-async-ops.html" title="Asynchronous File Operations">
<link rel="next" href="volumes.html" title="Volumes and Drives Handling">
<meta name="generator" content="GTK-Doc V1.18 (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="gnome-vfs-2.0-gnome-vfs-async-ops.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="gnome-vfs-file-async-ops.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">GnomeVFS - Filesystem Abstraction library</th>
<td><a accesskey="n" href="volumes.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#gnome-vfs-2.0-gnome-vfs-cancellation.synopsis" class="shortcut">Top</a>
|
<a href="#gnome-vfs-2.0-gnome-vfs-cancellation.description" class="shortcut">Description</a>
</td></tr>
</table>
<div class="refentry">
<a name="gnome-vfs-2.0-gnome-vfs-cancellation"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="gnome-vfs-2.0-gnome-vfs-cancellation.top_of_page"></a>Cancellation</span></h2>
<p>Cancellation — halt in-progress operations</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="gnome-vfs-2.0-gnome-vfs-cancellation.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis"><a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="returnvalue">GnomeVFSCancellation</span></a> * <a class="link" href="gnome-vfs-2.0-gnome-vfs-cancellation.html#gnome-vfs-cancellation-new" title="gnome_vfs_cancellation_new ()">gnome_vfs_cancellation_new</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
<span class="returnvalue">void</span> <a class="link" href="gnome-vfs-2.0-gnome-vfs-cancellation.html#gnome-vfs-cancellation-destroy" title="gnome_vfs_cancellation_destroy ()">gnome_vfs_cancellation_destroy</a> (<em class="parameter"><code><a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> *cancellation</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gnome-vfs-2.0-gnome-vfs-cancellation.html#gnome-vfs-cancellation-cancel" title="gnome_vfs_cancellation_cancel ()">gnome_vfs_cancellation_cancel</a> (<em class="parameter"><code><a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> *cancellation</code></em>);
<span class="returnvalue">gboolean</span> <a class="link" href="gnome-vfs-2.0-gnome-vfs-cancellation.html#gnome-vfs-cancellation-check" title="gnome_vfs_cancellation_check ()">gnome_vfs_cancellation_check</a> (<em class="parameter"><code><a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> *cancellation</code></em>);
<span class="returnvalue">void</span> <a class="link" href="gnome-vfs-2.0-gnome-vfs-cancellation.html#gnome-vfs-cancellation-ack" title="gnome_vfs_cancellation_ack ()">gnome_vfs_cancellation_ack</a> (<em class="parameter"><code><a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> *cancellation</code></em>);
<span class="returnvalue">gint</span> <a class="link" href="gnome-vfs-2.0-gnome-vfs-cancellation.html#gnome-vfs-cancellation-get-fd" title="gnome_vfs_cancellation_get_fd ()">gnome_vfs_cancellation_get_fd</a> (<em class="parameter"><code><a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> *cancellation</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="gnome-vfs-2.0-gnome-vfs-cancellation.description"></a><h2>Description</h2>
<p>
</p>
</div>
<div class="refsect1">
<a name="gnome-vfs-2.0-gnome-vfs-cancellation.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="gnome-vfs-cancellation-new"></a><h3>gnome_vfs_cancellation_new ()</h3>
<pre class="programlisting"><a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="returnvalue">GnomeVFSCancellation</span></a> * gnome_vfs_cancellation_new (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>
Create a new <a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> object for reporting cancellation to a
gnome-vfs module.
</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 pointer to the new GnomeVFSCancellation object.</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gnome-vfs-cancellation-destroy"></a><h3>gnome_vfs_cancellation_destroy ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gnome_vfs_cancellation_destroy (<em class="parameter"><code><a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> *cancellation</code></em>);</pre>
<p>
Destroy <em class="parameter"><code>cancellation</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>cancellation</code></em> :</span></p></td>
<td>a <a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> object.</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gnome-vfs-cancellation-cancel"></a><h3>gnome_vfs_cancellation_cancel ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gnome_vfs_cancellation_cancel (<em class="parameter"><code><a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> *cancellation</code></em>);</pre>
<p>
Send a cancellation request through <em class="parameter"><code>cancellation</code></em>.
</p>
<p>
If called on a different thread than the one handling idle
callbacks, there is a small race condition where the
operation finished callback will be called even if you
cancelled the operation. Its the apps responsibility
to handle this. See <a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#gnome-vfs-async-cancel" title="gnome_vfs_async_cancel ()"><code class="function">gnome_vfs_async_cancel()</code></a> for more
discussion about this.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>cancellation</code></em> :</span></p></td>
<td>a <a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> object.</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gnome-vfs-cancellation-check"></a><h3>gnome_vfs_cancellation_check ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span> gnome_vfs_cancellation_check (<em class="parameter"><code><a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> *cancellation</code></em>);</pre>
<p>
Check for pending cancellation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellation</code></em> :</span></p></td>
<td>a <a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> object.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<code class="literal">TRUE</code> if the operation should be interrupted.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gnome-vfs-cancellation-ack"></a><h3>gnome_vfs_cancellation_ack ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span> gnome_vfs_cancellation_ack (<em class="parameter"><code><a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> *cancellation</code></em>);</pre>
<p>
Acknowledge a cancellation. This should be called if
<a class="link" href="gnome-vfs-2.0-gnome-vfs-cancellation.html#gnome-vfs-cancellation-check" title="gnome_vfs_cancellation_check ()"><code class="function">gnome_vfs_cancellation_check()</code></a> returns <code class="literal">TRUE</code> or if <code class="function">select()</code> reports that
input is available on the file descriptor returned by
<a class="link" href="gnome-vfs-2.0-gnome-vfs-cancellation.html#gnome-vfs-cancellation-get-fd" title="gnome_vfs_cancellation_get_fd ()"><code class="function">gnome_vfs_cancellation_get_fd()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>cancellation</code></em> :</span></p></td>
<td>a <a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> object.</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gnome-vfs-cancellation-get-fd"></a><h3>gnome_vfs_cancellation_get_fd ()</h3>
<pre class="programlisting"><span class="returnvalue">gint</span> gnome_vfs_cancellation_get_fd (<em class="parameter"><code><a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> *cancellation</code></em>);</pre>
<p>
Get a file descriptor -based notificator for <em class="parameter"><code>cancellation</code></em>. When
<em class="parameter"><code>cancellation</code></em> receives a cancellation request, a character will be made
available on the returned file descriptor for input.
</p>
<p>
This is very useful for detecting cancellation during I/O operations: you
can use the <code class="function">select()</code> call to check for available input/output on the file
you are reading/writing, and on the notificator's file descriptor at the
same time. If a data is available on the notificator's file descriptor, you
know you have to cancel the read/write operation.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>cancellation</code></em> :</span></p></td>
<td>a <a class="link" href="gnome-vfs-2.0-gnome-vfs-async-ops.html#GnomeVFSCancellation" title="GnomeVFSCancellation"><span class="type">GnomeVFSCancellation</span></a> object.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the notificator's file descriptor, or -1 if starved of
file descriptors.</td>
</tr>
</tbody>
</table></div>
</div>
</div>
</div>
<div class="footer">
<hr>
Generated by GTK-Doc V1.18</div>
</body>
</html>
|