diff options
Diffstat (limited to '3rdparty/asio/src/doc/overview/iostreams.qbk')
-rw-r--r-- | 3rdparty/asio/src/doc/overview/iostreams.qbk | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/3rdparty/asio/src/doc/overview/iostreams.qbk b/3rdparty/asio/src/doc/overview/iostreams.qbk deleted file mode 100644 index f738f9edec5..00000000000 --- a/3rdparty/asio/src/doc/overview/iostreams.qbk +++ /dev/null @@ -1,72 +0,0 @@ -[/ - / Copyright (c) 2003-2016 Christopher M. Kohlhoff (chris at kohlhoff dot com) - / - / Distributed under the Boost Software License, Version 1.0. (See accompanying - / file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) - /] - -[section:iostreams Socket Iostreams] - -Asio includes classes that implement iostreams on top of sockets. These hide -away the complexities associated with endpoint resolution, protocol -independence, etc. To create a connection one might simply write: - - ip::tcp::iostream stream("www.boost.org", "http"); - if (!stream) - { - // Can't connect. - } - -The iostream class can also be used in conjunction with an acceptor to create -simple servers. For example: - - io_context ioc; - - ip::tcp::endpoint endpoint(tcp::v4(), 80); - ip::tcp::acceptor acceptor(ios, endpoint); - - for (;;) - { - ip::tcp::iostream stream; - acceptor.accept(stream.socket()); - ... - } - -Timeouts may be set by calling `expires_at()` or `expires_from_now()` to -establish a deadline. Any socket operations that occur past the deadline will -put the iostream into a "bad" state. - -For example, a simple client program like this: - - ip::tcp::iostream stream; - stream.expires_from_now(boost::posix_time::seconds(60)); - stream.connect("www.boost.org", "http"); - stream << "GET /LICENSE_1_0.txt HTTP/1.0\r\n"; - stream << "Host: www.boost.org\r\n"; - stream << "Accept: */*\r\n"; - stream << "Connection: close\r\n\r\n"; - stream.flush(); - std::cout << stream.rdbuf(); - -will fail if all the socket operations combined take longer than 60 seconds. - -If an error does occur, the iostream's `error()` member function may be used to -retrieve the error code from the most recent system call: - - if (!stream) - { - std::cout << "Error: " << stream.error().message() << "\n"; - } - -[heading See Also] - -[link asio.reference.ip__tcp.iostream ip::tcp::iostream], -[link asio.reference.basic_socket_iostream basic_socket_iostream], -[link asio.examples.cpp03_examples.iostreams iostreams examples]. - -[heading Notes] - -These iostream templates only support `char`, not `wchar_t`, and do not perform -any code conversion. - -[endsect] |