• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<html>
2<head>
3<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
4<title>posix::descriptor</title>
5<link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css">
6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
7<link rel="home" href="../../boost_asio.html" title="Boost.Asio">
8<link rel="up" href="../reference.html" title="Reference">
9<link rel="prev" href="posix__basic_stream_descriptor__rebind_executor/other.html" title="posix::basic_stream_descriptor::rebind_executor::other">
10<link rel="next" href="posix__descriptor_base.html" title="posix::descriptor_base">
11</head>
12<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
13<table cellpadding="2" width="100%"><tr>
14<td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td>
15<td align="center"><a href="../../../../index.html">Home</a></td>
16<td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td>
17<td align="center"><a href="http://www.boost.org/users/people.html">People</a></td>
18<td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td>
19<td align="center"><a href="../../../../more/index.htm">More</a></td>
20</tr></table>
21<hr>
22<div class="spirit-nav">
23<a accesskey="p" href="posix__basic_stream_descriptor__rebind_executor/other.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../boost_asio.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="posix__descriptor_base.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
24</div>
25<div class="section">
26<div class="titlepage"><div><div><h3 class="title">
27<a name="boost_asio.reference.posix__descriptor"></a><a class="link" href="posix__descriptor.html" title="posix::descriptor">posix::descriptor</a>
28</h3></div></div></div>
29<p>
30        <a class="indexterm" name="boost_asio.indexterm.posix__descriptor"></a>
31Typedef for the typical
32        usage of <a class="link" href="posix__basic_descriptor.html" title="posix::basic_descriptor"><code class="computeroutput">posix::basic_descriptor</code></a>.
33      </p>
34<pre class="programlisting">typedef basic_descriptor descriptor;
35</pre>
36<h5>
37<a name="boost_asio.reference.posix__descriptor.h0"></a>
38        <span class="phrase"><a name="boost_asio.reference.posix__descriptor.types"></a></span><a class="link" href="posix__descriptor.html#boost_asio.reference.posix__descriptor.types">Types</a>
39      </h5>
40<div class="informaltable"><table class="table">
41<colgroup>
42<col>
43<col>
44</colgroup>
45<thead><tr>
46<th>
47                <p>
48                  Name
49                </p>
50              </th>
51<th>
52                <p>
53                  Description
54                </p>
55              </th>
56</tr></thead>
57<tbody>
58<tr>
59<td>
60                <p>
61                  <a class="link" href="posix__basic_descriptor__rebind_executor.html" title="posix::basic_descriptor::rebind_executor"><span class="bold"><strong>rebind_executor</strong></span></a>
62                </p>
63              </td>
64<td>
65                <p>
66                  Rebinds the descriptor type to another executor.
67                </p>
68              </td>
69</tr>
70<tr>
71<td>
72                <p>
73                  <a class="link" href="posix__basic_descriptor/bytes_readable.html" title="posix::basic_descriptor::bytes_readable"><span class="bold"><strong>bytes_readable</strong></span></a>
74                </p>
75              </td>
76<td>
77                <p>
78                  IO control command to get the amount of data that can be read without
79                  blocking.
80                </p>
81              </td>
82</tr>
83<tr>
84<td>
85                <p>
86                  <a class="link" href="posix__basic_descriptor/executor_type.html" title="posix::basic_descriptor::executor_type"><span class="bold"><strong>executor_type</strong></span></a>
87                </p>
88              </td>
89<td>
90                <p>
91                  The type of the executor associated with the object.
92                </p>
93              </td>
94</tr>
95<tr>
96<td>
97                <p>
98                  <a class="link" href="posix__basic_descriptor/lowest_layer_type.html" title="posix::basic_descriptor::lowest_layer_type"><span class="bold"><strong>lowest_layer_type</strong></span></a>
99                </p>
100              </td>
101<td>
102                <p>
103                  A descriptor is always the lowest layer.
104                </p>
105              </td>
106</tr>
107<tr>
108<td>
109                <p>
110                  <a class="link" href="posix__basic_descriptor/native_handle_type.html" title="posix::basic_descriptor::native_handle_type"><span class="bold"><strong>native_handle_type</strong></span></a>
111                </p>
112              </td>
113<td>
114                <p>
115                  The native representation of a descriptor.
116                </p>
117              </td>
118</tr>
119<tr>
120<td>
121                <p>
122                  <a class="link" href="posix__basic_descriptor/wait_type.html" title="posix::basic_descriptor::wait_type"><span class="bold"><strong>wait_type</strong></span></a>
123                </p>
124              </td>
125<td>
126                <p>
127                  Wait types.
128                </p>
129              </td>
130</tr>
131</tbody>
132</table></div>
133<h5>
134<a name="boost_asio.reference.posix__descriptor.h1"></a>
135        <span class="phrase"><a name="boost_asio.reference.posix__descriptor.member_functions"></a></span><a class="link" href="posix__descriptor.html#boost_asio.reference.posix__descriptor.member_functions">Member
136        Functions</a>
137      </h5>
138<div class="informaltable"><table class="table">
139<colgroup>
140<col>
141<col>
142</colgroup>
143<thead><tr>
144<th>
145                <p>
146                  Name
147                </p>
148              </th>
149<th>
150                <p>
151                  Description
152                </p>
153              </th>
154</tr></thead>
155<tbody>
156<tr>
157<td>
158                <p>
159                  <a class="link" href="posix__basic_descriptor/assign.html" title="posix::basic_descriptor::assign"><span class="bold"><strong>assign</strong></span></a>
160                </p>
161              </td>
162<td>
163                <p>
164                  Assign an existing native descriptor to the descriptor.
165                </p>
166              </td>
167</tr>
168<tr>
169<td>
170                <p>
171                  <a class="link" href="posix__basic_descriptor/async_wait.html" title="posix::basic_descriptor::async_wait"><span class="bold"><strong>async_wait</strong></span></a>
172                </p>
173              </td>
174<td>
175                <p>
176                  Asynchronously wait for the descriptor to become ready to read,
177                  ready to write, or to have pending error conditions.
178                </p>
179              </td>
180</tr>
181<tr>
182<td>
183                <p>
184                  <a class="link" href="posix__basic_descriptor/basic_descriptor.html" title="posix::basic_descriptor::basic_descriptor"><span class="bold"><strong>basic_descriptor</strong></span></a> <span class="silver">[constructor]</span>
185                </p>
186              </td>
187<td>
188                <p>
189                  Construct a descriptor without opening it. <br> <span class="silver"> —</span><br> Construct
190                  a descriptor on an existing native descriptor. <br> <span class="silver"> —</span><br> Move-construct
191                  a descriptor from another.
192                </p>
193              </td>
194</tr>
195<tr>
196<td>
197                <p>
198                  <a class="link" href="posix__basic_descriptor/cancel.html" title="posix::basic_descriptor::cancel"><span class="bold"><strong>cancel</strong></span></a>
199                </p>
200              </td>
201<td>
202                <p>
203                  Cancel all asynchronous operations associated with the descriptor.
204                </p>
205              </td>
206</tr>
207<tr>
208<td>
209                <p>
210                  <a class="link" href="posix__basic_descriptor/close.html" title="posix::basic_descriptor::close"><span class="bold"><strong>close</strong></span></a>
211                </p>
212              </td>
213<td>
214                <p>
215                  Close the descriptor.
216                </p>
217              </td>
218</tr>
219<tr>
220<td>
221                <p>
222                  <a class="link" href="posix__basic_descriptor/get_executor.html" title="posix::basic_descriptor::get_executor"><span class="bold"><strong>get_executor</strong></span></a>
223                </p>
224              </td>
225<td>
226                <p>
227                  Get the executor associated with the object.
228                </p>
229              </td>
230</tr>
231<tr>
232<td>
233                <p>
234                  <a class="link" href="posix__basic_descriptor/io_control.html" title="posix::basic_descriptor::io_control"><span class="bold"><strong>io_control</strong></span></a>
235                </p>
236              </td>
237<td>
238                <p>
239                  Perform an IO control command on the descriptor.
240                </p>
241              </td>
242</tr>
243<tr>
244<td>
245                <p>
246                  <a class="link" href="posix__basic_descriptor/is_open.html" title="posix::basic_descriptor::is_open"><span class="bold"><strong>is_open</strong></span></a>
247                </p>
248              </td>
249<td>
250                <p>
251                  Determine whether the descriptor is open.
252                </p>
253              </td>
254</tr>
255<tr>
256<td>
257                <p>
258                  <a class="link" href="posix__basic_descriptor/lowest_layer.html" title="posix::basic_descriptor::lowest_layer"><span class="bold"><strong>lowest_layer</strong></span></a>
259                </p>
260              </td>
261<td>
262                <p>
263                  Get a reference to the lowest layer. <br> <span class="silver"> —</span><br> Get a const
264                  reference to the lowest layer.
265                </p>
266              </td>
267</tr>
268<tr>
269<td>
270                <p>
271                  <a class="link" href="posix__basic_descriptor/native_handle.html" title="posix::basic_descriptor::native_handle"><span class="bold"><strong>native_handle</strong></span></a>
272                </p>
273              </td>
274<td>
275                <p>
276                  Get the native descriptor representation.
277                </p>
278              </td>
279</tr>
280<tr>
281<td>
282                <p>
283                  <a class="link" href="posix__basic_descriptor/native_non_blocking.html" title="posix::basic_descriptor::native_non_blocking"><span class="bold"><strong>native_non_blocking</strong></span></a>
284                </p>
285              </td>
286<td>
287                <p>
288                  Gets the non-blocking mode of the native descriptor implementation.
289                  <br> <span class="silver"> —</span><br> Sets the non-blocking mode of the native descriptor
290                  implementation.
291                </p>
292              </td>
293</tr>
294<tr>
295<td>
296                <p>
297                  <a class="link" href="posix__basic_descriptor/non_blocking.html" title="posix::basic_descriptor::non_blocking"><span class="bold"><strong>non_blocking</strong></span></a>
298                </p>
299              </td>
300<td>
301                <p>
302                  Gets the non-blocking mode of the descriptor. <br> <span class="silver"> —</span><br> Sets
303                  the non-blocking mode of the descriptor.
304                </p>
305              </td>
306</tr>
307<tr>
308<td>
309                <p>
310                  <a class="link" href="posix__basic_descriptor/operator_eq_.html" title="posix::basic_descriptor::operator="><span class="bold"><strong>operator=</strong></span></a>
311                </p>
312              </td>
313<td>
314                <p>
315                  Move-assign a descriptor from another.
316                </p>
317              </td>
318</tr>
319<tr>
320<td>
321                <p>
322                  <a class="link" href="posix__basic_descriptor/release.html" title="posix::basic_descriptor::release"><span class="bold"><strong>release</strong></span></a>
323                </p>
324              </td>
325<td>
326                <p>
327                  Release ownership of the native descriptor implementation.
328                </p>
329              </td>
330</tr>
331<tr>
332<td>
333                <p>
334                  <a class="link" href="posix__basic_descriptor/wait.html" title="posix::basic_descriptor::wait"><span class="bold"><strong>wait</strong></span></a>
335                </p>
336              </td>
337<td>
338                <p>
339                  Wait for the descriptor to become ready to read, ready to write,
340                  or to have pending error conditions.
341                </p>
342              </td>
343</tr>
344</tbody>
345</table></div>
346<h5>
347<a name="boost_asio.reference.posix__descriptor.h2"></a>
348        <span class="phrase"><a name="boost_asio.reference.posix__descriptor.protected_member_functions"></a></span><a class="link" href="posix__descriptor.html#boost_asio.reference.posix__descriptor.protected_member_functions">Protected
349        Member Functions</a>
350      </h5>
351<div class="informaltable"><table class="table">
352<colgroup>
353<col>
354<col>
355</colgroup>
356<thead><tr>
357<th>
358                <p>
359                  Name
360                </p>
361              </th>
362<th>
363                <p>
364                  Description
365                </p>
366              </th>
367</tr></thead>
368<tbody><tr>
369<td>
370                <p>
371                  <a class="link" href="posix__basic_descriptor/_basic_descriptor.html" title="posix::basic_descriptor::~basic_descriptor"><span class="bold"><strong>~basic_descriptor</strong></span></a> <span class="silver">[destructor]</span>
372                </p>
373              </td>
374<td>
375                <p>
376                  Protected destructor to prevent deletion through this type.
377                </p>
378              </td>
379</tr></tbody>
380</table></div>
381<p>
382        The <a class="link" href="posix__basic_descriptor.html" title="posix::basic_descriptor"><code class="computeroutput">posix::basic_descriptor</code></a>
383        class template provides the ability to wrap a POSIX descriptor.
384      </p>
385<h5>
386<a name="boost_asio.reference.posix__descriptor.h3"></a>
387        <span class="phrase"><a name="boost_asio.reference.posix__descriptor.thread_safety"></a></span><a class="link" href="posix__descriptor.html#boost_asio.reference.posix__descriptor.thread_safety">Thread Safety</a>
388      </h5>
389<p>
390        <span class="emphasis"><em>Distinct</em></span> <span class="emphasis"><em>objects:</em></span> Safe.
391      </p>
392<p>
393        <span class="emphasis"><em>Shared</em></span> <span class="emphasis"><em>objects:</em></span> Unsafe.
394      </p>
395<h5>
396<a name="boost_asio.reference.posix__descriptor.h4"></a>
397        <span class="phrase"><a name="boost_asio.reference.posix__descriptor.requirements"></a></span><a class="link" href="posix__descriptor.html#boost_asio.reference.posix__descriptor.requirements">Requirements</a>
398      </h5>
399<p>
400        <span class="emphasis"><em>Header: </em></span><code class="literal">boost/asio/posix/descriptor.hpp</code>
401      </p>
402<p>
403        <span class="emphasis"><em>Convenience header: </em></span><code class="literal">boost/asio.hpp</code>
404      </p>
405</div>
406<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
407<td align="left"></td>
408<td align="right"><div class="copyright-footer">Copyright © 2003-2020 Christopher M.
409      Kohlhoff<p>
410        Distributed under the Boost Software License, Version 1.0. (See accompanying
411        file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
412      </p>
413</div></td>
414</tr></table>
415<hr>
416<div class="spirit-nav">
417<a accesskey="p" href="posix__basic_stream_descriptor__rebind_executor/other.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../reference.html"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../boost_asio.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="posix__descriptor_base.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a>
418</div>
419</body>
420</html>
421