Imported Upstream version 1.64.0
[platform/upstream/boost.git] / doc / html / boost_asio / reference / generic__stream_protocol / socket.html
1 <html>
2 <head>
3 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
4 <title>generic::stream_protocol::socket</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="../generic__stream_protocol.html" title="generic::stream_protocol">
9 <link rel="prev" href="protocol.html" title="generic::stream_protocol::protocol">
10 <link rel="next" href="stream_protocol.html" title="generic::stream_protocol::stream_protocol">
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="protocol.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../generic__stream_protocol.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="stream_protocol.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
24 </div>
25 <div class="section">
26 <div class="titlepage"><div><div><h4 class="title">
27 <a name="boost_asio.reference.generic__stream_protocol.socket"></a><a class="link" href="socket.html" title="generic::stream_protocol::socket">generic::stream_protocol::socket</a>
28 </h4></div></div></div>
29 <p>
30           <a class="indexterm" name="idp143968320"></a> 
31 The generic socket type.
32         </p>
33 <pre class="programlisting"><span class="keyword">typedef</span> <span class="identifier">basic_stream_socket</span><span class="special">&lt;</span> <span class="identifier">stream_protocol</span> <span class="special">&gt;</span> <span class="identifier">socket</span><span class="special">;</span>
34 </pre>
35 <h6>
36 <a name="boost_asio.reference.generic__stream_protocol.socket.h0"></a>
37           <span class="phrase"><a name="boost_asio.reference.generic__stream_protocol.socket.types"></a></span><a class="link" href="socket.html#boost_asio.reference.generic__stream_protocol.socket.types">Types</a>
38         </h6>
39 <div class="informaltable"><table class="table">
40 <colgroup>
41 <col>
42 <col>
43 </colgroup>
44 <thead><tr>
45 <th>
46                   <p>
47                     Name
48                   </p>
49                 </th>
50 <th>
51                   <p>
52                     Description
53                   </p>
54                 </th>
55 </tr></thead>
56 <tbody>
57 <tr>
58 <td>
59                   <p>
60                     <a class="link" href="../basic_stream_socket/broadcast.html" title="basic_stream_socket::broadcast"><span class="bold"><strong>broadcast</strong></span></a>
61                   </p>
62                 </td>
63 <td>
64                   <p>
65                     Socket option to permit sending of broadcast messages.
66                   </p>
67                 </td>
68 </tr>
69 <tr>
70 <td>
71                   <p>
72                     <a class="link" href="../basic_stream_socket/bytes_readable.html" title="basic_stream_socket::bytes_readable"><span class="bold"><strong>bytes_readable</strong></span></a>
73                   </p>
74                 </td>
75 <td>
76                   <p>
77                     IO control command to get the amount of data that can be read
78                     without blocking.
79                   </p>
80                 </td>
81 </tr>
82 <tr>
83 <td>
84                   <p>
85                     <a class="link" href="../basic_stream_socket/debug.html" title="basic_stream_socket::debug"><span class="bold"><strong>debug</strong></span></a>
86                   </p>
87                 </td>
88 <td>
89                   <p>
90                     Socket option to enable socket-level debugging.
91                   </p>
92                 </td>
93 </tr>
94 <tr>
95 <td>
96                   <p>
97                     <a class="link" href="../basic_stream_socket/do_not_route.html" title="basic_stream_socket::do_not_route"><span class="bold"><strong>do_not_route</strong></span></a>
98                   </p>
99                 </td>
100 <td>
101                   <p>
102                     Socket option to prevent routing, use local interfaces only.
103                   </p>
104                 </td>
105 </tr>
106 <tr>
107 <td>
108                   <p>
109                     <a class="link" href="../basic_stream_socket/enable_connection_aborted.html" title="basic_stream_socket::enable_connection_aborted"><span class="bold"><strong>enable_connection_aborted</strong></span></a>
110                   </p>
111                 </td>
112 <td>
113                   <p>
114                     Socket option to report aborted connections on accept.
115                   </p>
116                 </td>
117 </tr>
118 <tr>
119 <td>
120                   <p>
121                     <a class="link" href="../basic_stream_socket/endpoint_type.html" title="basic_stream_socket::endpoint_type"><span class="bold"><strong>endpoint_type</strong></span></a>
122                   </p>
123                 </td>
124 <td>
125                   <p>
126                     The endpoint type.
127                   </p>
128                 </td>
129 </tr>
130 <tr>
131 <td>
132                   <p>
133                     <a class="link" href="../basic_stream_socket/implementation_type.html" title="basic_stream_socket::implementation_type"><span class="bold"><strong>implementation_type</strong></span></a>
134                   </p>
135                 </td>
136 <td>
137                   <p>
138                     The underlying implementation type of I/O object.
139                   </p>
140                 </td>
141 </tr>
142 <tr>
143 <td>
144                   <p>
145                     <a class="link" href="../basic_stream_socket/keep_alive.html" title="basic_stream_socket::keep_alive"><span class="bold"><strong>keep_alive</strong></span></a>
146                   </p>
147                 </td>
148 <td>
149                   <p>
150                     Socket option to send keep-alives.
151                   </p>
152                 </td>
153 </tr>
154 <tr>
155 <td>
156                   <p>
157                     <a class="link" href="../basic_stream_socket/linger.html" title="basic_stream_socket::linger"><span class="bold"><strong>linger</strong></span></a>
158                   </p>
159                 </td>
160 <td>
161                   <p>
162                     Socket option to specify whether the socket lingers on close
163                     if unsent data is present.
164                   </p>
165                 </td>
166 </tr>
167 <tr>
168 <td>
169                   <p>
170                     <a class="link" href="../basic_stream_socket/lowest_layer_type.html" title="basic_stream_socket::lowest_layer_type"><span class="bold"><strong>lowest_layer_type</strong></span></a>
171                   </p>
172                 </td>
173 <td>
174                   <p>
175                     A basic_socket is always the lowest layer.
176                   </p>
177                 </td>
178 </tr>
179 <tr>
180 <td>
181                   <p>
182                     <a class="link" href="../basic_stream_socket/message_flags.html" title="basic_stream_socket::message_flags"><span class="bold"><strong>message_flags</strong></span></a>
183                   </p>
184                 </td>
185 <td>
186                   <p>
187                     Bitmask type for flags that can be passed to send and receive
188                     operations.
189                   </p>
190                 </td>
191 </tr>
192 <tr>
193 <td>
194                   <p>
195                     <a class="link" href="../basic_stream_socket/native_handle_type.html" title="basic_stream_socket::native_handle_type"><span class="bold"><strong>native_handle_type</strong></span></a>
196                   </p>
197                 </td>
198 <td>
199                   <p>
200                     The native representation of a socket.
201                   </p>
202                 </td>
203 </tr>
204 <tr>
205 <td>
206                   <p>
207                     <a class="link" href="../basic_stream_socket/native_type.html" title="basic_stream_socket::native_type"><span class="bold"><strong>native_type</strong></span></a>
208                   </p>
209                 </td>
210 <td>
211                   <p>
212                     (Deprecated: Use native_handle_type.) The native representation
213                     of a socket.
214                   </p>
215                 </td>
216 </tr>
217 <tr>
218 <td>
219                   <p>
220                     <a class="link" href="../basic_stream_socket/non_blocking_io.html" title="basic_stream_socket::non_blocking_io"><span class="bold"><strong>non_blocking_io</strong></span></a>
221                   </p>
222                 </td>
223 <td>
224                   <p>
225                     (Deprecated: Use non_blocking().) IO control command to set the
226                     blocking mode of the socket.
227                   </p>
228                 </td>
229 </tr>
230 <tr>
231 <td>
232                   <p>
233                     <a class="link" href="../basic_stream_socket/protocol_type.html" title="basic_stream_socket::protocol_type"><span class="bold"><strong>protocol_type</strong></span></a>
234                   </p>
235                 </td>
236 <td>
237                   <p>
238                     The protocol type.
239                   </p>
240                 </td>
241 </tr>
242 <tr>
243 <td>
244                   <p>
245                     <a class="link" href="../basic_stream_socket/receive_buffer_size.html" title="basic_stream_socket::receive_buffer_size"><span class="bold"><strong>receive_buffer_size</strong></span></a>
246                   </p>
247                 </td>
248 <td>
249                   <p>
250                     Socket option for the receive buffer size of a socket.
251                   </p>
252                 </td>
253 </tr>
254 <tr>
255 <td>
256                   <p>
257                     <a class="link" href="../basic_stream_socket/receive_low_watermark.html" title="basic_stream_socket::receive_low_watermark"><span class="bold"><strong>receive_low_watermark</strong></span></a>
258                   </p>
259                 </td>
260 <td>
261                   <p>
262                     Socket option for the receive low watermark.
263                   </p>
264                 </td>
265 </tr>
266 <tr>
267 <td>
268                   <p>
269                     <a class="link" href="../basic_stream_socket/reuse_address.html" title="basic_stream_socket::reuse_address"><span class="bold"><strong>reuse_address</strong></span></a>
270                   </p>
271                 </td>
272 <td>
273                   <p>
274                     Socket option to allow the socket to be bound to an address that
275                     is already in use.
276                   </p>
277                 </td>
278 </tr>
279 <tr>
280 <td>
281                   <p>
282                     <a class="link" href="../basic_stream_socket/send_buffer_size.html" title="basic_stream_socket::send_buffer_size"><span class="bold"><strong>send_buffer_size</strong></span></a>
283                   </p>
284                 </td>
285 <td>
286                   <p>
287                     Socket option for the send buffer size of a socket.
288                   </p>
289                 </td>
290 </tr>
291 <tr>
292 <td>
293                   <p>
294                     <a class="link" href="../basic_stream_socket/send_low_watermark.html" title="basic_stream_socket::send_low_watermark"><span class="bold"><strong>send_low_watermark</strong></span></a>
295                   </p>
296                 </td>
297 <td>
298                   <p>
299                     Socket option for the send low watermark.
300                   </p>
301                 </td>
302 </tr>
303 <tr>
304 <td>
305                   <p>
306                     <a class="link" href="../basic_stream_socket/service_type.html" title="basic_stream_socket::service_type"><span class="bold"><strong>service_type</strong></span></a>
307                   </p>
308                 </td>
309 <td>
310                   <p>
311                     The type of the service that will be used to provide I/O operations.
312                   </p>
313                 </td>
314 </tr>
315 <tr>
316 <td>
317                   <p>
318                     <a class="link" href="../basic_stream_socket/shutdown_type.html" title="basic_stream_socket::shutdown_type"><span class="bold"><strong>shutdown_type</strong></span></a>
319                   </p>
320                 </td>
321 <td>
322                   <p>
323                     Different ways a socket may be shutdown.
324                   </p>
325                 </td>
326 </tr>
327 </tbody>
328 </table></div>
329 <h6>
330 <a name="boost_asio.reference.generic__stream_protocol.socket.h1"></a>
331           <span class="phrase"><a name="boost_asio.reference.generic__stream_protocol.socket.member_functions"></a></span><a class="link" href="socket.html#boost_asio.reference.generic__stream_protocol.socket.member_functions">Member
332           Functions</a>
333         </h6>
334 <div class="informaltable"><table class="table">
335 <colgroup>
336 <col>
337 <col>
338 </colgroup>
339 <thead><tr>
340 <th>
341                   <p>
342                     Name
343                   </p>
344                 </th>
345 <th>
346                   <p>
347                     Description
348                   </p>
349                 </th>
350 </tr></thead>
351 <tbody>
352 <tr>
353 <td>
354                   <p>
355                     <a class="link" href="../basic_stream_socket/assign.html" title="basic_stream_socket::assign"><span class="bold"><strong>assign</strong></span></a>
356                   </p>
357                 </td>
358 <td>
359                   <p>
360                     Assign an existing native socket to the socket.
361                   </p>
362                 </td>
363 </tr>
364 <tr>
365 <td>
366                   <p>
367                     <a class="link" href="../basic_stream_socket/async_connect.html" title="basic_stream_socket::async_connect"><span class="bold"><strong>async_connect</strong></span></a>
368                   </p>
369                 </td>
370 <td>
371                   <p>
372                     Start an asynchronous connect.
373                   </p>
374                 </td>
375 </tr>
376 <tr>
377 <td>
378                   <p>
379                     <a class="link" href="../basic_stream_socket/async_read_some.html" title="basic_stream_socket::async_read_some"><span class="bold"><strong>async_read_some</strong></span></a>
380                   </p>
381                 </td>
382 <td>
383                   <p>
384                     Start an asynchronous read.
385                   </p>
386                 </td>
387 </tr>
388 <tr>
389 <td>
390                   <p>
391                     <a class="link" href="../basic_stream_socket/async_receive.html" title="basic_stream_socket::async_receive"><span class="bold"><strong>async_receive</strong></span></a>
392                   </p>
393                 </td>
394 <td>
395                   <p>
396                     Start an asynchronous receive.
397                   </p>
398                 </td>
399 </tr>
400 <tr>
401 <td>
402                   <p>
403                     <a class="link" href="../basic_stream_socket/async_send.html" title="basic_stream_socket::async_send"><span class="bold"><strong>async_send</strong></span></a>
404                   </p>
405                 </td>
406 <td>
407                   <p>
408                     Start an asynchronous send.
409                   </p>
410                 </td>
411 </tr>
412 <tr>
413 <td>
414                   <p>
415                     <a class="link" href="../basic_stream_socket/async_write_some.html" title="basic_stream_socket::async_write_some"><span class="bold"><strong>async_write_some</strong></span></a>
416                   </p>
417                 </td>
418 <td>
419                   <p>
420                     Start an asynchronous write.
421                   </p>
422                 </td>
423 </tr>
424 <tr>
425 <td>
426                   <p>
427                     <a class="link" href="../basic_stream_socket/at_mark.html" title="basic_stream_socket::at_mark"><span class="bold"><strong>at_mark</strong></span></a>
428                   </p>
429                 </td>
430 <td>
431                   <p>
432                     Determine whether the socket is at the out-of-band data mark.
433                   </p>
434                 </td>
435 </tr>
436 <tr>
437 <td>
438                   <p>
439                     <a class="link" href="../basic_stream_socket/available.html" title="basic_stream_socket::available"><span class="bold"><strong>available</strong></span></a>
440                   </p>
441                 </td>
442 <td>
443                   <p>
444                     Determine the number of bytes available for reading.
445                   </p>
446                 </td>
447 </tr>
448 <tr>
449 <td>
450                   <p>
451                     <a class="link" href="../basic_stream_socket/basic_stream_socket.html" title="basic_stream_socket::basic_stream_socket"><span class="bold"><strong>basic_stream_socket</strong></span></a>
452                   </p>
453                 </td>
454 <td>
455                   <p>
456                     Construct a basic_stream_socket without opening it.
457                   </p>
458                   <p>
459                     Construct and open a basic_stream_socket.
460                   </p>
461                   <p>
462                     Construct a basic_stream_socket, opening it and binding it to
463                     the given local endpoint.
464                   </p>
465                   <p>
466                     Construct a basic_stream_socket on an existing native socket.
467                   </p>
468                   <p>
469                     Move-construct a basic_stream_socket from another.
470                   </p>
471                   <p>
472                     Move-construct a basic_stream_socket from a socket of another
473                     protocol type.
474                   </p>
475                 </td>
476 </tr>
477 <tr>
478 <td>
479                   <p>
480                     <a class="link" href="../basic_stream_socket/bind.html" title="basic_stream_socket::bind"><span class="bold"><strong>bind</strong></span></a>
481                   </p>
482                 </td>
483 <td>
484                   <p>
485                     Bind the socket to the given local endpoint.
486                   </p>
487                 </td>
488 </tr>
489 <tr>
490 <td>
491                   <p>
492                     <a class="link" href="../basic_stream_socket/cancel.html" title="basic_stream_socket::cancel"><span class="bold"><strong>cancel</strong></span></a>
493                   </p>
494                 </td>
495 <td>
496                   <p>
497                     Cancel all asynchronous operations associated with the socket.
498                   </p>
499                 </td>
500 </tr>
501 <tr>
502 <td>
503                   <p>
504                     <a class="link" href="../basic_stream_socket/close.html" title="basic_stream_socket::close"><span class="bold"><strong>close</strong></span></a>
505                   </p>
506                 </td>
507 <td>
508                   <p>
509                     Close the socket.
510                   </p>
511                 </td>
512 </tr>
513 <tr>
514 <td>
515                   <p>
516                     <a class="link" href="../basic_stream_socket/connect.html" title="basic_stream_socket::connect"><span class="bold"><strong>connect</strong></span></a>
517                   </p>
518                 </td>
519 <td>
520                   <p>
521                     Connect the socket to the specified endpoint.
522                   </p>
523                 </td>
524 </tr>
525 <tr>
526 <td>
527                   <p>
528                     <a class="link" href="../basic_stream_socket/get_io_service.html" title="basic_stream_socket::get_io_service"><span class="bold"><strong>get_io_service</strong></span></a>
529                   </p>
530                 </td>
531 <td>
532                   <p>
533                     Get the io_service associated with the object.
534                   </p>
535                 </td>
536 </tr>
537 <tr>
538 <td>
539                   <p>
540                     <a class="link" href="../basic_stream_socket/get_option.html" title="basic_stream_socket::get_option"><span class="bold"><strong>get_option</strong></span></a>
541                   </p>
542                 </td>
543 <td>
544                   <p>
545                     Get an option from the socket.
546                   </p>
547                 </td>
548 </tr>
549 <tr>
550 <td>
551                   <p>
552                     <a class="link" href="../basic_stream_socket/io_control.html" title="basic_stream_socket::io_control"><span class="bold"><strong>io_control</strong></span></a>
553                   </p>
554                 </td>
555 <td>
556                   <p>
557                     Perform an IO control command on the socket.
558                   </p>
559                 </td>
560 </tr>
561 <tr>
562 <td>
563                   <p>
564                     <a class="link" href="../basic_stream_socket/is_open.html" title="basic_stream_socket::is_open"><span class="bold"><strong>is_open</strong></span></a>
565                   </p>
566                 </td>
567 <td>
568                   <p>
569                     Determine whether the socket is open.
570                   </p>
571                 </td>
572 </tr>
573 <tr>
574 <td>
575                   <p>
576                     <a class="link" href="../basic_stream_socket/local_endpoint.html" title="basic_stream_socket::local_endpoint"><span class="bold"><strong>local_endpoint</strong></span></a>
577                   </p>
578                 </td>
579 <td>
580                   <p>
581                     Get the local endpoint of the socket.
582                   </p>
583                 </td>
584 </tr>
585 <tr>
586 <td>
587                   <p>
588                     <a class="link" href="../basic_stream_socket/lowest_layer.html" title="basic_stream_socket::lowest_layer"><span class="bold"><strong>lowest_layer</strong></span></a>
589                   </p>
590                 </td>
591 <td>
592                   <p>
593                     Get a reference to the lowest layer.
594                   </p>
595                   <p>
596                     Get a const reference to the lowest layer.
597                   </p>
598                 </td>
599 </tr>
600 <tr>
601 <td>
602                   <p>
603                     <a class="link" href="../basic_stream_socket/native.html" title="basic_stream_socket::native"><span class="bold"><strong>native</strong></span></a>
604                   </p>
605                 </td>
606 <td>
607                   <p>
608                     (Deprecated: Use native_handle().) Get the native socket representation.
609                   </p>
610                 </td>
611 </tr>
612 <tr>
613 <td>
614                   <p>
615                     <a class="link" href="../basic_stream_socket/native_handle.html" title="basic_stream_socket::native_handle"><span class="bold"><strong>native_handle</strong></span></a>
616                   </p>
617                 </td>
618 <td>
619                   <p>
620                     Get the native socket representation.
621                   </p>
622                 </td>
623 </tr>
624 <tr>
625 <td>
626                   <p>
627                     <a class="link" href="../basic_stream_socket/native_non_blocking.html" title="basic_stream_socket::native_non_blocking"><span class="bold"><strong>native_non_blocking</strong></span></a>
628                   </p>
629                 </td>
630 <td>
631                   <p>
632                     Gets the non-blocking mode of the native socket implementation.
633                   </p>
634                   <p>
635                     Sets the non-blocking mode of the native socket implementation.
636                   </p>
637                 </td>
638 </tr>
639 <tr>
640 <td>
641                   <p>
642                     <a class="link" href="../basic_stream_socket/non_blocking.html" title="basic_stream_socket::non_blocking"><span class="bold"><strong>non_blocking</strong></span></a>
643                   </p>
644                 </td>
645 <td>
646                   <p>
647                     Gets the non-blocking mode of the socket.
648                   </p>
649                   <p>
650                     Sets the non-blocking mode of the socket.
651                   </p>
652                 </td>
653 </tr>
654 <tr>
655 <td>
656                   <p>
657                     <a class="link" href="../basic_stream_socket/open.html" title="basic_stream_socket::open"><span class="bold"><strong>open</strong></span></a>
658                   </p>
659                 </td>
660 <td>
661                   <p>
662                     Open the socket using the specified protocol.
663                   </p>
664                 </td>
665 </tr>
666 <tr>
667 <td>
668                   <p>
669                     <a class="link" href="../basic_stream_socket/operator_eq_.html" title="basic_stream_socket::operator="><span class="bold"><strong>operator=</strong></span></a>
670                   </p>
671                 </td>
672 <td>
673                   <p>
674                     Move-assign a basic_stream_socket from another.
675                   </p>
676                   <p>
677                     Move-assign a basic_stream_socket from a socket of another protocol
678                     type.
679                   </p>
680                 </td>
681 </tr>
682 <tr>
683 <td>
684                   <p>
685                     <a class="link" href="../basic_stream_socket/read_some.html" title="basic_stream_socket::read_some"><span class="bold"><strong>read_some</strong></span></a>
686                   </p>
687                 </td>
688 <td>
689                   <p>
690                     Read some data from the socket.
691                   </p>
692                 </td>
693 </tr>
694 <tr>
695 <td>
696                   <p>
697                     <a class="link" href="../basic_stream_socket/receive.html" title="basic_stream_socket::receive"><span class="bold"><strong>receive</strong></span></a>
698                   </p>
699                 </td>
700 <td>
701                   <p>
702                     Receive some data on the socket.
703                   </p>
704                   <p>
705                     Receive some data on a connected socket.
706                   </p>
707                 </td>
708 </tr>
709 <tr>
710 <td>
711                   <p>
712                     <a class="link" href="../basic_stream_socket/remote_endpoint.html" title="basic_stream_socket::remote_endpoint"><span class="bold"><strong>remote_endpoint</strong></span></a>
713                   </p>
714                 </td>
715 <td>
716                   <p>
717                     Get the remote endpoint of the socket.
718                   </p>
719                 </td>
720 </tr>
721 <tr>
722 <td>
723                   <p>
724                     <a class="link" href="../basic_stream_socket/send.html" title="basic_stream_socket::send"><span class="bold"><strong>send</strong></span></a>
725                   </p>
726                 </td>
727 <td>
728                   <p>
729                     Send some data on the socket.
730                   </p>
731                 </td>
732 </tr>
733 <tr>
734 <td>
735                   <p>
736                     <a class="link" href="../basic_stream_socket/set_option.html" title="basic_stream_socket::set_option"><span class="bold"><strong>set_option</strong></span></a>
737                   </p>
738                 </td>
739 <td>
740                   <p>
741                     Set an option on the socket.
742                   </p>
743                 </td>
744 </tr>
745 <tr>
746 <td>
747                   <p>
748                     <a class="link" href="../basic_stream_socket/shutdown.html" title="basic_stream_socket::shutdown"><span class="bold"><strong>shutdown</strong></span></a>
749                   </p>
750                 </td>
751 <td>
752                   <p>
753                     Disable sends or receives on the socket.
754                   </p>
755                 </td>
756 </tr>
757 <tr>
758 <td>
759                   <p>
760                     <a class="link" href="../basic_stream_socket/write_some.html" title="basic_stream_socket::write_some"><span class="bold"><strong>write_some</strong></span></a>
761                   </p>
762                 </td>
763 <td>
764                   <p>
765                     Write some data to the socket.
766                   </p>
767                 </td>
768 </tr>
769 </tbody>
770 </table></div>
771 <h6>
772 <a name="boost_asio.reference.generic__stream_protocol.socket.h2"></a>
773           <span class="phrase"><a name="boost_asio.reference.generic__stream_protocol.socket.protected_member_functions"></a></span><a class="link" href="socket.html#boost_asio.reference.generic__stream_protocol.socket.protected_member_functions">Protected
774           Member Functions</a>
775         </h6>
776 <div class="informaltable"><table class="table">
777 <colgroup>
778 <col>
779 <col>
780 </colgroup>
781 <thead><tr>
782 <th>
783                   <p>
784                     Name
785                   </p>
786                 </th>
787 <th>
788                   <p>
789                     Description
790                   </p>
791                 </th>
792 </tr></thead>
793 <tbody>
794 <tr>
795 <td>
796                   <p>
797                     <a class="link" href="../basic_stream_socket/get_implementation.html" title="basic_stream_socket::get_implementation"><span class="bold"><strong>get_implementation</strong></span></a>
798                   </p>
799                 </td>
800 <td>
801                   <p>
802                     Get the underlying implementation of the I/O object.
803                   </p>
804                 </td>
805 </tr>
806 <tr>
807 <td>
808                   <p>
809                     <a class="link" href="../basic_stream_socket/get_service.html" title="basic_stream_socket::get_service"><span class="bold"><strong>get_service</strong></span></a>
810                   </p>
811                 </td>
812 <td>
813                   <p>
814                     Get the service associated with the I/O object.
815                   </p>
816                 </td>
817 </tr>
818 </tbody>
819 </table></div>
820 <h6>
821 <a name="boost_asio.reference.generic__stream_protocol.socket.h3"></a>
822           <span class="phrase"><a name="boost_asio.reference.generic__stream_protocol.socket.data_members"></a></span><a class="link" href="socket.html#boost_asio.reference.generic__stream_protocol.socket.data_members">Data
823           Members</a>
824         </h6>
825 <div class="informaltable"><table class="table">
826 <colgroup>
827 <col>
828 <col>
829 </colgroup>
830 <thead><tr>
831 <th>
832                   <p>
833                     Name
834                   </p>
835                 </th>
836 <th>
837                   <p>
838                     Description
839                   </p>
840                 </th>
841 </tr></thead>
842 <tbody>
843 <tr>
844 <td>
845                   <p>
846                     <a class="link" href="../basic_stream_socket/max_connections.html" title="basic_stream_socket::max_connections"><span class="bold"><strong>max_connections</strong></span></a>
847                   </p>
848                 </td>
849 <td>
850                   <p>
851                     The maximum length of the queue of pending incoming connections.
852                   </p>
853                 </td>
854 </tr>
855 <tr>
856 <td>
857                   <p>
858                     <a class="link" href="../basic_stream_socket/message_do_not_route.html" title="basic_stream_socket::message_do_not_route"><span class="bold"><strong>message_do_not_route</strong></span></a>
859                   </p>
860                 </td>
861 <td>
862                   <p>
863                     Specify that the data should not be subject to routing.
864                   </p>
865                 </td>
866 </tr>
867 <tr>
868 <td>
869                   <p>
870                     <a class="link" href="../basic_stream_socket/message_end_of_record.html" title="basic_stream_socket::message_end_of_record"><span class="bold"><strong>message_end_of_record</strong></span></a>
871                   </p>
872                 </td>
873 <td>
874                   <p>
875                     Specifies that the data marks the end of a record.
876                   </p>
877                 </td>
878 </tr>
879 <tr>
880 <td>
881                   <p>
882                     <a class="link" href="../basic_stream_socket/message_out_of_band.html" title="basic_stream_socket::message_out_of_band"><span class="bold"><strong>message_out_of_band</strong></span></a>
883                   </p>
884                 </td>
885 <td>
886                   <p>
887                     Process out-of-band data.
888                   </p>
889                 </td>
890 </tr>
891 <tr>
892 <td>
893                   <p>
894                     <a class="link" href="../basic_stream_socket/message_peek.html" title="basic_stream_socket::message_peek"><span class="bold"><strong>message_peek</strong></span></a>
895                   </p>
896                 </td>
897 <td>
898                   <p>
899                     Peek at incoming data without removing it from the input queue.
900                   </p>
901                 </td>
902 </tr>
903 </tbody>
904 </table></div>
905 <h6>
906 <a name="boost_asio.reference.generic__stream_protocol.socket.h4"></a>
907           <span class="phrase"><a name="boost_asio.reference.generic__stream_protocol.socket.protected_data_members"></a></span><a class="link" href="socket.html#boost_asio.reference.generic__stream_protocol.socket.protected_data_members">Protected
908           Data Members</a>
909         </h6>
910 <div class="informaltable"><table class="table">
911 <colgroup>
912 <col>
913 <col>
914 </colgroup>
915 <thead><tr>
916 <th>
917                   <p>
918                     Name
919                   </p>
920                 </th>
921 <th>
922                   <p>
923                     Description
924                   </p>
925                 </th>
926 </tr></thead>
927 <tbody>
928 <tr>
929 <td>
930                   <p>
931                     <a class="link" href="../basic_stream_socket/implementation.html" title="basic_stream_socket::implementation"><span class="bold"><strong>implementation</strong></span></a>
932                   </p>
933                 </td>
934 <td>
935                   <p>
936                     (Deprecated: Use get_implementation().) The underlying implementation
937                     of the I/O object.
938                   </p>
939                 </td>
940 </tr>
941 <tr>
942 <td>
943                   <p>
944                     <a class="link" href="../basic_stream_socket/service.html" title="basic_stream_socket::service"><span class="bold"><strong>service</strong></span></a>
945                   </p>
946                 </td>
947 <td>
948                   <p>
949                     (Deprecated: Use get_service().) The service associated with
950                     the I/O object.
951                   </p>
952                 </td>
953 </tr>
954 </tbody>
955 </table></div>
956 <p>
957           The <a class="link" href="../basic_stream_socket.html" title="basic_stream_socket"><code class="computeroutput"><span class="identifier">basic_stream_socket</span></code></a> class template
958           provides asynchronous and blocking stream-oriented socket functionality.
959         </p>
960 <h6>
961 <a name="boost_asio.reference.generic__stream_protocol.socket.h5"></a>
962           <span class="phrase"><a name="boost_asio.reference.generic__stream_protocol.socket.thread_safety"></a></span><a class="link" href="socket.html#boost_asio.reference.generic__stream_protocol.socket.thread_safety">Thread
963           Safety</a>
964         </h6>
965 <p>
966           <span class="emphasis"><em>Distinct</em></span> <span class="emphasis"><em>objects:</em></span> Safe.
967         </p>
968 <p>
969           <span class="emphasis"><em>Shared</em></span> <span class="emphasis"><em>objects:</em></span> Unsafe.
970         </p>
971 <h6>
972 <a name="boost_asio.reference.generic__stream_protocol.socket.h6"></a>
973           <span class="phrase"><a name="boost_asio.reference.generic__stream_protocol.socket.requirements"></a></span><a class="link" href="socket.html#boost_asio.reference.generic__stream_protocol.socket.requirements">Requirements</a>
974         </h6>
975 <p>
976           <span class="emphasis"><em>Header: </em></span><code class="literal">boost/asio/generic/stream_protocol.hpp</code>
977         </p>
978 <p>
979           <span class="emphasis"><em>Convenience header: </em></span><code class="literal">boost/asio.hpp</code>
980         </p>
981 </div>
982 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
983 <td align="left"></td>
984 <td align="right"><div class="copyright-footer">Copyright &#169; 2003-2017 Christopher M. Kohlhoff<p>
985         Distributed under the Boost Software License, Version 1.0. (See accompanying
986         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>)
987       </p>
988 </div></td>
989 </tr></table>
990 <hr>
991 <div class="spirit-nav">
992 <a accesskey="p" href="protocol.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../generic__stream_protocol.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="stream_protocol.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
993 </div>
994 </body>
995 </html>