PageRenderTime 69ms CodeModel.GetById 14ms app.highlight 47ms RepoModel.GetById 1ms app.codeStats 1ms

/boost_1_45_0/doc/html/boost_asio/reference/ip__tcp/socket.html

https://bitbucket.org/Tank_Master/boost145
HTML | 867 lines | 867 code | 0 blank | 0 comment | 0 complexity | 4b0b34ee0d41b58514a4fa072e728c24 MD5 | raw file
  1<html>
  2<head>
  3<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
  4<title>ip::tcp::socket</title>
  5<link rel="stylesheet" href="../../../../../doc/src/boostbook.css" type="text/css">
  6<meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
  7<link rel="home" href="../../../boost_asio.html" title="Boost.Asio">
  8<link rel="up" href="../ip__tcp.html" title="ip::tcp">
  9<link rel="prev" href="resolver_query.html" title="ip::tcp::resolver_query">
 10<link rel="next" href="type.html" title="ip::tcp::type">
 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="resolver_query.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.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="type.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.ip__tcp.socket"></a><a class="link" href="socket.html" title="ip::tcp::socket">ip::tcp::socket</a>
 28</h4></div></div></div>
 29<p>
 30          <a class="indexterm" name="id1224885"></a> 
 31The TCP 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">tcp</span> <span class="special">&gt;</span> <span class="identifier">socket</span><span class="special">;</span>
 34</pre>
 35<a name="boost_asio.reference.ip__tcp.socket.types"></a><h6>
 36<a name="id1224945"></a>
 37          <a class="link" href="socket.html#boost_asio.reference.ip__tcp.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_type.html" title="basic_stream_socket::native_type"><span class="bold"><strong>native_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/non_blocking_io.html" title="basic_stream_socket::non_blocking_io"><span class="bold"><strong>non_blocking_io</strong></span></a>
208                  </p>
209                </td>
210<td>
211                  <p>
212                    IO control command to set the blocking mode of the socket.
213                  </p>
214                </td>
215</tr>
216<tr>
217<td>
218                  <p>
219                    <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>
220                  </p>
221                </td>
222<td>
223                  <p>
224                    The protocol type.
225                  </p>
226                </td>
227</tr>
228<tr>
229<td>
230                  <p>
231                    <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>
232                  </p>
233                </td>
234<td>
235                  <p>
236                    Socket option for the receive buffer size of a socket.
237                  </p>
238                </td>
239</tr>
240<tr>
241<td>
242                  <p>
243                    <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>
244                  </p>
245                </td>
246<td>
247                  <p>
248                    Socket option for the receive low watermark.
249                  </p>
250                </td>
251</tr>
252<tr>
253<td>
254                  <p>
255                    <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>
256                  </p>
257                </td>
258<td>
259                  <p>
260                    Socket option to allow the socket to be bound to an address that
261                    is already in use.
262                  </p>
263                </td>
264</tr>
265<tr>
266<td>
267                  <p>
268                    <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>
269                  </p>
270                </td>
271<td>
272                  <p>
273                    Socket option for the send buffer size of a socket.
274                  </p>
275                </td>
276</tr>
277<tr>
278<td>
279                  <p>
280                    <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>
281                  </p>
282                </td>
283<td>
284                  <p>
285                    Socket option for the send low watermark.
286                  </p>
287                </td>
288</tr>
289<tr>
290<td>
291                  <p>
292                    <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>
293                  </p>
294                </td>
295<td>
296                  <p>
297                    The type of the service that will be used to provide I/O operations.
298                  </p>
299                </td>
300</tr>
301<tr>
302<td>
303                  <p>
304                    <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>
305                  </p>
306                </td>
307<td>
308                  <p>
309                    Different ways a socket may be shutdown.
310                  </p>
311                </td>
312</tr>
313</tbody>
314</table></div>
315<a name="boost_asio.reference.ip__tcp.socket.member_functions"></a><h6>
316<a name="id1225613"></a>
317          <a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.member_functions">Member
318          Functions</a>
319        </h6>
320<div class="informaltable"><table class="table">
321<colgroup>
322<col>
323<col>
324</colgroup>
325<thead><tr>
326<th>
327                  <p>
328                    Name
329                  </p>
330                </th>
331<th>
332                  <p>
333                    Description
334                  </p>
335                </th>
336</tr></thead>
337<tbody>
338<tr>
339<td>
340                  <p>
341                    <a class="link" href="../basic_stream_socket/assign.html" title="basic_stream_socket::assign"><span class="bold"><strong>assign</strong></span></a>
342                  </p>
343                </td>
344<td>
345                  <p>
346                    Assign an existing native socket to the socket.
347                  </p>
348                </td>
349</tr>
350<tr>
351<td>
352                  <p>
353                    <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>
354                  </p>
355                </td>
356<td>
357                  <p>
358                    Start an asynchronous connect.
359                  </p>
360                </td>
361</tr>
362<tr>
363<td>
364                  <p>
365                    <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>
366                  </p>
367                </td>
368<td>
369                  <p>
370                    Start an asynchronous read.
371                  </p>
372                </td>
373</tr>
374<tr>
375<td>
376                  <p>
377                    <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>
378                  </p>
379                </td>
380<td>
381                  <p>
382                    Start an asynchronous receive.
383                  </p>
384                </td>
385</tr>
386<tr>
387<td>
388                  <p>
389                    <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>
390                  </p>
391                </td>
392<td>
393                  <p>
394                    Start an asynchronous send.
395                  </p>
396                </td>
397</tr>
398<tr>
399<td>
400                  <p>
401                    <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>
402                  </p>
403                </td>
404<td>
405                  <p>
406                    Start an asynchronous write.
407                  </p>
408                </td>
409</tr>
410<tr>
411<td>
412                  <p>
413                    <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>
414                  </p>
415                </td>
416<td>
417                  <p>
418                    Determine whether the socket is at the out-of-band data mark.
419                  </p>
420                </td>
421</tr>
422<tr>
423<td>
424                  <p>
425                    <a class="link" href="../basic_stream_socket/available.html" title="basic_stream_socket::available"><span class="bold"><strong>available</strong></span></a>
426                  </p>
427                </td>
428<td>
429                  <p>
430                    Determine the number of bytes available for reading.
431                  </p>
432                </td>
433</tr>
434<tr>
435<td>
436                  <p>
437                    <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>
438                  </p>
439                </td>
440<td>
441                  <p>
442                    Construct a basic_stream_socket without opening it.
443                  </p>
444                  <p>
445                    Construct and open a basic_stream_socket.
446                  </p>
447                  <p>
448                    Construct a basic_stream_socket, opening it and binding it to
449                    the given local endpoint.
450                  </p>
451                  <p>
452                    Construct a basic_stream_socket on an existing native socket.
453                  </p>
454                </td>
455</tr>
456<tr>
457<td>
458                  <p>
459                    <a class="link" href="../basic_stream_socket/bind.html" title="basic_stream_socket::bind"><span class="bold"><strong>bind</strong></span></a>
460                  </p>
461                </td>
462<td>
463                  <p>
464                    Bind the socket to the given local endpoint.
465                  </p>
466                </td>
467</tr>
468<tr>
469<td>
470                  <p>
471                    <a class="link" href="../basic_stream_socket/cancel.html" title="basic_stream_socket::cancel"><span class="bold"><strong>cancel</strong></span></a>
472                  </p>
473                </td>
474<td>
475                  <p>
476                    Cancel all asynchronous operations associated with the socket.
477                  </p>
478                </td>
479</tr>
480<tr>
481<td>
482                  <p>
483                    <a class="link" href="../basic_stream_socket/close.html" title="basic_stream_socket::close"><span class="bold"><strong>close</strong></span></a>
484                  </p>
485                </td>
486<td>
487                  <p>
488                    Close the socket.
489                  </p>
490                </td>
491</tr>
492<tr>
493<td>
494                  <p>
495                    <a class="link" href="../basic_stream_socket/connect.html" title="basic_stream_socket::connect"><span class="bold"><strong>connect</strong></span></a>
496                  </p>
497                </td>
498<td>
499                  <p>
500                    Connect the socket to the specified endpoint.
501                  </p>
502                </td>
503</tr>
504<tr>
505<td>
506                  <p>
507                    <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>
508                  </p>
509                </td>
510<td>
511                  <p>
512                    Get the io_service associated with the object.
513                  </p>
514                </td>
515</tr>
516<tr>
517<td>
518                  <p>
519                    <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>
520                  </p>
521                </td>
522<td>
523                  <p>
524                    Get an option from the socket.
525                  </p>
526                </td>
527</tr>
528<tr>
529<td>
530                  <p>
531                    <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>
532                  </p>
533                </td>
534<td>
535                  <p>
536                    Perform an IO control command on the socket.
537                  </p>
538                </td>
539</tr>
540<tr>
541<td>
542                  <p>
543                    <a class="link" href="../basic_stream_socket/io_service.html" title="basic_stream_socket::io_service"><span class="bold"><strong>io_service</strong></span></a>
544                  </p>
545                </td>
546<td>
547                  <p>
548                    (Deprecated: use get_io_service().) Get the io_service associated
549                    with the object.
550                  </p>
551                </td>
552</tr>
553<tr>
554<td>
555                  <p>
556                    <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>
557                  </p>
558                </td>
559<td>
560                  <p>
561                    Determine whether the socket is open.
562                  </p>
563                </td>
564</tr>
565<tr>
566<td>
567                  <p>
568                    <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>
569                  </p>
570                </td>
571<td>
572                  <p>
573                    Get the local endpoint of the socket.
574                  </p>
575                </td>
576</tr>
577<tr>
578<td>
579                  <p>
580                    <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>
581                  </p>
582                </td>
583<td>
584                  <p>
585                    Get a reference to the lowest layer.
586                  </p>
587                  <p>
588                    Get a const reference to the lowest layer.
589                  </p>
590                </td>
591</tr>
592<tr>
593<td>
594                  <p>
595                    <a class="link" href="../basic_stream_socket/native.html" title="basic_stream_socket::native"><span class="bold"><strong>native</strong></span></a>
596                  </p>
597                </td>
598<td>
599                  <p>
600                    Get the native socket representation.
601                  </p>
602                </td>
603</tr>
604<tr>
605<td>
606                  <p>
607                    <a class="link" href="../basic_stream_socket/open.html" title="basic_stream_socket::open"><span class="bold"><strong>open</strong></span></a>
608                  </p>
609                </td>
610<td>
611                  <p>
612                    Open the socket using the specified protocol.
613                  </p>
614                </td>
615</tr>
616<tr>
617<td>
618                  <p>
619                    <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>
620                  </p>
621                </td>
622<td>
623                  <p>
624                    Read some data from the socket.
625                  </p>
626                </td>
627</tr>
628<tr>
629<td>
630                  <p>
631                    <a class="link" href="../basic_stream_socket/receive.html" title="basic_stream_socket::receive"><span class="bold"><strong>receive</strong></span></a>
632                  </p>
633                </td>
634<td>
635                  <p>
636                    Receive some data on the socket.
637                  </p>
638                  <p>
639                    Receive some data on a connected socket.
640                  </p>
641                </td>
642</tr>
643<tr>
644<td>
645                  <p>
646                    <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>
647                  </p>
648                </td>
649<td>
650                  <p>
651                    Get the remote endpoint of the socket.
652                  </p>
653                </td>
654</tr>
655<tr>
656<td>
657                  <p>
658                    <a class="link" href="../basic_stream_socket/send.html" title="basic_stream_socket::send"><span class="bold"><strong>send</strong></span></a>
659                  </p>
660                </td>
661<td>
662                  <p>
663                    Send some data on the socket.
664                  </p>
665                </td>
666</tr>
667<tr>
668<td>
669                  <p>
670                    <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>
671                  </p>
672                </td>
673<td>
674                  <p>
675                    Set an option on the socket.
676                  </p>
677                </td>
678</tr>
679<tr>
680<td>
681                  <p>
682                    <a class="link" href="../basic_stream_socket/shutdown.html" title="basic_stream_socket::shutdown"><span class="bold"><strong>shutdown</strong></span></a>
683                  </p>
684                </td>
685<td>
686                  <p>
687                    Disable sends or receives on the socket.
688                  </p>
689                </td>
690</tr>
691<tr>
692<td>
693                  <p>
694                    <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>
695                  </p>
696                </td>
697<td>
698                  <p>
699                    Write some data to the socket.
700                  </p>
701                </td>
702</tr>
703</tbody>
704</table></div>
705<a name="boost_asio.reference.ip__tcp.socket.data_members"></a><h6>
706<a name="id1226532"></a>
707          <a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.data_members">Data Members</a>
708        </h6>
709<div class="informaltable"><table class="table">
710<colgroup>
711<col>
712<col>
713</colgroup>
714<thead><tr>
715<th>
716                  <p>
717                    Name
718                  </p>
719                </th>
720<th>
721                  <p>
722                    Description
723                  </p>
724                </th>
725</tr></thead>
726<tbody>
727<tr>
728<td>
729                  <p>
730                    <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>
731                  </p>
732                </td>
733<td>
734                  <p>
735                    The maximum length of the queue of pending incoming connections.
736                  </p>
737                </td>
738</tr>
739<tr>
740<td>
741                  <p>
742                    <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>
743                  </p>
744                </td>
745<td>
746                  <p>
747                    Specify that the data should not be subject to routing.
748                  </p>
749                </td>
750</tr>
751<tr>
752<td>
753                  <p>
754                    <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>
755                  </p>
756                </td>
757<td>
758                  <p>
759                    Process out-of-band data.
760                  </p>
761                </td>
762</tr>
763<tr>
764<td>
765                  <p>
766                    <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>
767                  </p>
768                </td>
769<td>
770                  <p>
771                    Peek at incoming data without removing it from the input queue.
772                  </p>
773                </td>
774</tr>
775</tbody>
776</table></div>
777<a name="boost_asio.reference.ip__tcp.socket.protected_data_members"></a><h6>
778<a name="id1226705"></a>
779          <a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.protected_data_members">Protected
780          Data Members</a>
781        </h6>
782<div class="informaltable"><table class="table">
783<colgroup>
784<col>
785<col>
786</colgroup>
787<thead><tr>
788<th>
789                  <p>
790                    Name
791                  </p>
792                </th>
793<th>
794                  <p>
795                    Description
796                  </p>
797                </th>
798</tr></thead>
799<tbody>
800<tr>
801<td>
802                  <p>
803                    <a class="link" href="../basic_stream_socket/implementation.html" title="basic_stream_socket::implementation"><span class="bold"><strong>implementation</strong></span></a>
804                  </p>
805                </td>
806<td>
807                  <p>
808                    The underlying implementation of the I/O object.
809                  </p>
810                </td>
811</tr>
812<tr>
813<td>
814                  <p>
815                    <a class="link" href="../basic_stream_socket/service.html" title="basic_stream_socket::service"><span class="bold"><strong>service</strong></span></a>
816                  </p>
817                </td>
818<td>
819                  <p>
820                    The service associated with the I/O object.
821                  </p>
822                </td>
823</tr>
824</tbody>
825</table></div>
826<p>
827          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
828          provides asynchronous and blocking stream-oriented socket functionality.
829        </p>
830<a name="boost_asio.reference.ip__tcp.socket.thread_safety"></a><h6>
831<a name="id1226842"></a>
832          <a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.thread_safety">Thread
833          Safety</a>
834        </h6>
835<p>
836          <span class="bold"><strong>Distinct</strong></span> <span class="bold"><strong>objects:</strong></span>
837          Safe.
838        </p>
839<p>
840          <span class="bold"><strong>Shared</strong></span> <span class="bold"><strong>objects:</strong></span>
841          Unsafe.
842        </p>
843<a name="boost_asio.reference.ip__tcp.socket.requirements"></a><h6>
844<a name="id1226894"></a>
845          <a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.requirements">Requirements</a>
846        </h6>
847<p>
848          <span class="bold"><strong>Header: </strong></span><code class="literal">boost/asio/ip/tcp.hpp</code>
849        </p>
850<p>
851          <span class="bold"><strong>Convenience header: </strong></span><code class="literal">boost/asio.hpp</code>
852        </p>
853</div>
854<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
855<td align="left"></td>
856<td align="right"><div class="copyright-footer">Copyright &#169; 2003 - 2010 Christopher M. Kohlhoff<p>
857        Distributed under the Boost Software License, Version 1.0. (See accompanying
858        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>)
859      </p>
860</div></td>
861</tr></table>
862<hr>
863<div class="spirit-nav">
864<a accesskey="p" href="resolver_query.html"><img src="../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../ip__tcp.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="type.html"><img src="../../../../../doc/src/images/next.png" alt="Next"></a>
865</div>
866</body>
867</html>