PageRenderTime 53ms CodeModel.GetById 15ms RepoModel.GetById 1ms app.codeStats 0ms

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

https://bitbucket.org/ArminW/3p-boost
HTML | 989 lines | 989 code | 0 blank | 0 comment | 0 complexity | 65be62957c13e93de20211584c56968b 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.76.1">
  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.html" title="ip::tcp::resolver">
  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.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="id1408120"></a>
  31. The 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. <h6>
  36. <a name="boost_asio.reference.ip__tcp.socket.h0"></a>
  37. <span><a name="boost_asio.reference.ip__tcp.socket.types"></a></span><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_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.ip__tcp.socket.h1"></a>
  331. <span><a name="boost_asio.reference.ip__tcp.socket.member_functions"></a></span><a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.member_functions">Member Functions</a>
  332. </h6>
  333. <div class="informaltable"><table class="table">
  334. <colgroup>
  335. <col>
  336. <col>
  337. </colgroup>
  338. <thead><tr>
  339. <th>
  340. <p>
  341. Name
  342. </p>
  343. </th>
  344. <th>
  345. <p>
  346. Description
  347. </p>
  348. </th>
  349. </tr></thead>
  350. <tbody>
  351. <tr>
  352. <td>
  353. <p>
  354. <a class="link" href="../basic_stream_socket/assign.html" title="basic_stream_socket::assign"><span class="bold"><strong>assign</strong></span></a>
  355. </p>
  356. </td>
  357. <td>
  358. <p>
  359. Assign an existing native socket to the socket.
  360. </p>
  361. </td>
  362. </tr>
  363. <tr>
  364. <td>
  365. <p>
  366. <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>
  367. </p>
  368. </td>
  369. <td>
  370. <p>
  371. Start an asynchronous connect.
  372. </p>
  373. </td>
  374. </tr>
  375. <tr>
  376. <td>
  377. <p>
  378. <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>
  379. </p>
  380. </td>
  381. <td>
  382. <p>
  383. Start an asynchronous read.
  384. </p>
  385. </td>
  386. </tr>
  387. <tr>
  388. <td>
  389. <p>
  390. <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>
  391. </p>
  392. </td>
  393. <td>
  394. <p>
  395. Start an asynchronous receive.
  396. </p>
  397. </td>
  398. </tr>
  399. <tr>
  400. <td>
  401. <p>
  402. <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>
  403. </p>
  404. </td>
  405. <td>
  406. <p>
  407. Start an asynchronous send.
  408. </p>
  409. </td>
  410. </tr>
  411. <tr>
  412. <td>
  413. <p>
  414. <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>
  415. </p>
  416. </td>
  417. <td>
  418. <p>
  419. Start an asynchronous write.
  420. </p>
  421. </td>
  422. </tr>
  423. <tr>
  424. <td>
  425. <p>
  426. <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>
  427. </p>
  428. </td>
  429. <td>
  430. <p>
  431. Determine whether the socket is at the out-of-band data mark.
  432. </p>
  433. </td>
  434. </tr>
  435. <tr>
  436. <td>
  437. <p>
  438. <a class="link" href="../basic_stream_socket/available.html" title="basic_stream_socket::available"><span class="bold"><strong>available</strong></span></a>
  439. </p>
  440. </td>
  441. <td>
  442. <p>
  443. Determine the number of bytes available for reading.
  444. </p>
  445. </td>
  446. </tr>
  447. <tr>
  448. <td>
  449. <p>
  450. <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>
  451. </p>
  452. </td>
  453. <td>
  454. <p>
  455. Construct a basic_stream_socket without opening it.
  456. </p>
  457. <p>
  458. Construct and open a basic_stream_socket.
  459. </p>
  460. <p>
  461. Construct a basic_stream_socket, opening it and binding it to
  462. the given local endpoint.
  463. </p>
  464. <p>
  465. Construct a basic_stream_socket on an existing native socket.
  466. </p>
  467. <p>
  468. Move-construct a basic_stream_socket from another.
  469. </p>
  470. </td>
  471. </tr>
  472. <tr>
  473. <td>
  474. <p>
  475. <a class="link" href="../basic_stream_socket/bind.html" title="basic_stream_socket::bind"><span class="bold"><strong>bind</strong></span></a>
  476. </p>
  477. </td>
  478. <td>
  479. <p>
  480. Bind the socket to the given local endpoint.
  481. </p>
  482. </td>
  483. </tr>
  484. <tr>
  485. <td>
  486. <p>
  487. <a class="link" href="../basic_stream_socket/cancel.html" title="basic_stream_socket::cancel"><span class="bold"><strong>cancel</strong></span></a>
  488. </p>
  489. </td>
  490. <td>
  491. <p>
  492. Cancel all asynchronous operations associated with the socket.
  493. </p>
  494. </td>
  495. </tr>
  496. <tr>
  497. <td>
  498. <p>
  499. <a class="link" href="../basic_stream_socket/close.html" title="basic_stream_socket::close"><span class="bold"><strong>close</strong></span></a>
  500. </p>
  501. </td>
  502. <td>
  503. <p>
  504. Close the socket.
  505. </p>
  506. </td>
  507. </tr>
  508. <tr>
  509. <td>
  510. <p>
  511. <a class="link" href="../basic_stream_socket/connect.html" title="basic_stream_socket::connect"><span class="bold"><strong>connect</strong></span></a>
  512. </p>
  513. </td>
  514. <td>
  515. <p>
  516. Connect the socket to the specified endpoint.
  517. </p>
  518. </td>
  519. </tr>
  520. <tr>
  521. <td>
  522. <p>
  523. <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>
  524. </p>
  525. </td>
  526. <td>
  527. <p>
  528. Get the io_service associated with the object.
  529. </p>
  530. </td>
  531. </tr>
  532. <tr>
  533. <td>
  534. <p>
  535. <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>
  536. </p>
  537. </td>
  538. <td>
  539. <p>
  540. Get an option from the socket.
  541. </p>
  542. </td>
  543. </tr>
  544. <tr>
  545. <td>
  546. <p>
  547. <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>
  548. </p>
  549. </td>
  550. <td>
  551. <p>
  552. Perform an IO control command on the socket.
  553. </p>
  554. </td>
  555. </tr>
  556. <tr>
  557. <td>
  558. <p>
  559. <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>
  560. </p>
  561. </td>
  562. <td>
  563. <p>
  564. Determine whether the socket is open.
  565. </p>
  566. </td>
  567. </tr>
  568. <tr>
  569. <td>
  570. <p>
  571. <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>
  572. </p>
  573. </td>
  574. <td>
  575. <p>
  576. Get the local endpoint of the socket.
  577. </p>
  578. </td>
  579. </tr>
  580. <tr>
  581. <td>
  582. <p>
  583. <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>
  584. </p>
  585. </td>
  586. <td>
  587. <p>
  588. Get a reference to the lowest layer.
  589. </p>
  590. <p>
  591. Get a const reference to the lowest layer.
  592. </p>
  593. </td>
  594. </tr>
  595. <tr>
  596. <td>
  597. <p>
  598. <a class="link" href="../basic_stream_socket/native.html" title="basic_stream_socket::native"><span class="bold"><strong>native</strong></span></a>
  599. </p>
  600. </td>
  601. <td>
  602. <p>
  603. (Deprecated: Use native_handle().) Get the native socket representation.
  604. </p>
  605. </td>
  606. </tr>
  607. <tr>
  608. <td>
  609. <p>
  610. <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>
  611. </p>
  612. </td>
  613. <td>
  614. <p>
  615. Get the native socket representation.
  616. </p>
  617. </td>
  618. </tr>
  619. <tr>
  620. <td>
  621. <p>
  622. <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>
  623. </p>
  624. </td>
  625. <td>
  626. <p>
  627. Gets the non-blocking mode of the native socket implementation.
  628. </p>
  629. <p>
  630. Sets the non-blocking mode of the native socket implementation.
  631. </p>
  632. </td>
  633. </tr>
  634. <tr>
  635. <td>
  636. <p>
  637. <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>
  638. </p>
  639. </td>
  640. <td>
  641. <p>
  642. Gets the non-blocking mode of the socket.
  643. </p>
  644. <p>
  645. Sets the non-blocking mode of the socket.
  646. </p>
  647. </td>
  648. </tr>
  649. <tr>
  650. <td>
  651. <p>
  652. <a class="link" href="../basic_stream_socket/open.html" title="basic_stream_socket::open"><span class="bold"><strong>open</strong></span></a>
  653. </p>
  654. </td>
  655. <td>
  656. <p>
  657. Open the socket using the specified protocol.
  658. </p>
  659. </td>
  660. </tr>
  661. <tr>
  662. <td>
  663. <p>
  664. <a class="link" href="../basic_stream_socket/operator_eq_.html" title="basic_stream_socket::operator="><span class="bold"><strong>operator=</strong></span></a>
  665. </p>
  666. </td>
  667. <td>
  668. <p>
  669. Move-assign a basic_stream_socket from another.
  670. </p>
  671. </td>
  672. </tr>
  673. <tr>
  674. <td>
  675. <p>
  676. <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>
  677. </p>
  678. </td>
  679. <td>
  680. <p>
  681. Read some data from the socket.
  682. </p>
  683. </td>
  684. </tr>
  685. <tr>
  686. <td>
  687. <p>
  688. <a class="link" href="../basic_stream_socket/receive.html" title="basic_stream_socket::receive"><span class="bold"><strong>receive</strong></span></a>
  689. </p>
  690. </td>
  691. <td>
  692. <p>
  693. Receive some data on the socket.
  694. </p>
  695. <p>
  696. Receive some data on a connected socket.
  697. </p>
  698. </td>
  699. </tr>
  700. <tr>
  701. <td>
  702. <p>
  703. <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>
  704. </p>
  705. </td>
  706. <td>
  707. <p>
  708. Get the remote endpoint of the socket.
  709. </p>
  710. </td>
  711. </tr>
  712. <tr>
  713. <td>
  714. <p>
  715. <a class="link" href="../basic_stream_socket/send.html" title="basic_stream_socket::send"><span class="bold"><strong>send</strong></span></a>
  716. </p>
  717. </td>
  718. <td>
  719. <p>
  720. Send some data on the socket.
  721. </p>
  722. </td>
  723. </tr>
  724. <tr>
  725. <td>
  726. <p>
  727. <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>
  728. </p>
  729. </td>
  730. <td>
  731. <p>
  732. Set an option on the socket.
  733. </p>
  734. </td>
  735. </tr>
  736. <tr>
  737. <td>
  738. <p>
  739. <a class="link" href="../basic_stream_socket/shutdown.html" title="basic_stream_socket::shutdown"><span class="bold"><strong>shutdown</strong></span></a>
  740. </p>
  741. </td>
  742. <td>
  743. <p>
  744. Disable sends or receives on the socket.
  745. </p>
  746. </td>
  747. </tr>
  748. <tr>
  749. <td>
  750. <p>
  751. <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>
  752. </p>
  753. </td>
  754. <td>
  755. <p>
  756. Write some data to the socket.
  757. </p>
  758. </td>
  759. </tr>
  760. </tbody>
  761. </table></div>
  762. <h6>
  763. <a name="boost_asio.reference.ip__tcp.socket.h2"></a>
  764. <span><a name="boost_asio.reference.ip__tcp.socket.protected_member_functions"></a></span><a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.protected_member_functions">Protected
  765. Member Functions</a>
  766. </h6>
  767. <div class="informaltable"><table class="table">
  768. <colgroup>
  769. <col>
  770. <col>
  771. </colgroup>
  772. <thead><tr>
  773. <th>
  774. <p>
  775. Name
  776. </p>
  777. </th>
  778. <th>
  779. <p>
  780. Description
  781. </p>
  782. </th>
  783. </tr></thead>
  784. <tbody>
  785. <tr>
  786. <td>
  787. <p>
  788. <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>
  789. </p>
  790. </td>
  791. <td>
  792. <p>
  793. Get the underlying implementation of the I/O object.
  794. </p>
  795. </td>
  796. </tr>
  797. <tr>
  798. <td>
  799. <p>
  800. <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>
  801. </p>
  802. </td>
  803. <td>
  804. <p>
  805. Get the service associated with the I/O object.
  806. </p>
  807. </td>
  808. </tr>
  809. </tbody>
  810. </table></div>
  811. <h6>
  812. <a name="boost_asio.reference.ip__tcp.socket.h3"></a>
  813. <span><a name="boost_asio.reference.ip__tcp.socket.data_members"></a></span><a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.data_members">Data
  814. Members</a>
  815. </h6>
  816. <div class="informaltable"><table class="table">
  817. <colgroup>
  818. <col>
  819. <col>
  820. </colgroup>
  821. <thead><tr>
  822. <th>
  823. <p>
  824. Name
  825. </p>
  826. </th>
  827. <th>
  828. <p>
  829. Description
  830. </p>
  831. </th>
  832. </tr></thead>
  833. <tbody>
  834. <tr>
  835. <td>
  836. <p>
  837. <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>
  838. </p>
  839. </td>
  840. <td>
  841. <p>
  842. The maximum length of the queue of pending incoming connections.
  843. </p>
  844. </td>
  845. </tr>
  846. <tr>
  847. <td>
  848. <p>
  849. <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>
  850. </p>
  851. </td>
  852. <td>
  853. <p>
  854. Specify that the data should not be subject to routing.
  855. </p>
  856. </td>
  857. </tr>
  858. <tr>
  859. <td>
  860. <p>
  861. <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>
  862. </p>
  863. </td>
  864. <td>
  865. <p>
  866. Specifies that the data marks the end of a record.
  867. </p>
  868. </td>
  869. </tr>
  870. <tr>
  871. <td>
  872. <p>
  873. <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>
  874. </p>
  875. </td>
  876. <td>
  877. <p>
  878. Process out-of-band data.
  879. </p>
  880. </td>
  881. </tr>
  882. <tr>
  883. <td>
  884. <p>
  885. <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>
  886. </p>
  887. </td>
  888. <td>
  889. <p>
  890. Peek at incoming data without removing it from the input queue.
  891. </p>
  892. </td>
  893. </tr>
  894. </tbody>
  895. </table></div>
  896. <h6>
  897. <a name="boost_asio.reference.ip__tcp.socket.h4"></a>
  898. <span><a name="boost_asio.reference.ip__tcp.socket.protected_data_members"></a></span><a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.protected_data_members">Protected
  899. Data Members</a>
  900. </h6>
  901. <div class="informaltable"><table class="table">
  902. <colgroup>
  903. <col>
  904. <col>
  905. </colgroup>
  906. <thead><tr>
  907. <th>
  908. <p>
  909. Name
  910. </p>
  911. </th>
  912. <th>
  913. <p>
  914. Description
  915. </p>
  916. </th>
  917. </tr></thead>
  918. <tbody>
  919. <tr>
  920. <td>
  921. <p>
  922. <a class="link" href="../basic_stream_socket/implementation.html" title="basic_stream_socket::implementation"><span class="bold"><strong>implementation</strong></span></a>
  923. </p>
  924. </td>
  925. <td>
  926. <p>
  927. (Deprecated: Use get_implementation().) The underlying implementation
  928. of the I/O object.
  929. </p>
  930. </td>
  931. </tr>
  932. <tr>
  933. <td>
  934. <p>
  935. <a class="link" href="../basic_stream_socket/service.html" title="basic_stream_socket::service"><span class="bold"><strong>service</strong></span></a>
  936. </p>
  937. </td>
  938. <td>
  939. <p>
  940. (Deprecated: Use get_service().) The service associated with
  941. the I/O object.
  942. </p>
  943. </td>
  944. </tr>
  945. </tbody>
  946. </table></div>
  947. <p>
  948. 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
  949. provides asynchronous and blocking stream-oriented socket functionality.
  950. </p>
  951. <h6>
  952. <a name="boost_asio.reference.ip__tcp.socket.h5"></a>
  953. <span><a name="boost_asio.reference.ip__tcp.socket.thread_safety"></a></span><a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.thread_safety">Thread
  954. Safety</a>
  955. </h6>
  956. <p>
  957. <span class="bold"><strong>Distinct</strong></span> <span class="bold"><strong>objects:</strong></span>
  958. Safe.
  959. </p>
  960. <p>
  961. <span class="bold"><strong>Shared</strong></span> <span class="bold"><strong>objects:</strong></span>
  962. Unsafe.
  963. </p>
  964. <h6>
  965. <a name="boost_asio.reference.ip__tcp.socket.h6"></a>
  966. <span><a name="boost_asio.reference.ip__tcp.socket.requirements"></a></span><a class="link" href="socket.html#boost_asio.reference.ip__tcp.socket.requirements">Requirements</a>
  967. </h6>
  968. <p>
  969. <span class="bold"><strong>Header: </strong></span><code class="literal">boost/asio/ip/tcp.hpp</code>
  970. </p>
  971. <p>
  972. <span class="bold"><strong>Convenience header: </strong></span><code class="literal">boost/asio.hpp</code>
  973. </p>
  974. </div>
  975. <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
  976. <td align="left"></td>
  977. <td align="right"><div class="copyright-footer">Copyright &#169; 2003-2011 Christopher
  978. M. Kohlhoff<p>
  979. Distributed under the Boost Software License, Version 1.0. (See accompanying
  980. 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>)
  981. </p>
  982. </div></td>
  983. </tr></table>
  984. <hr>
  985. <div class="spirit-nav">
  986. <a accesskey="p" href="resolver.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>
  987. </div>
  988. </body>
  989. </html>