| [/ |
| / Copyright (c) 2003-2015 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:ObjectHandleService Object handle service requirements] |
| |
| An object handle service must meet the requirements for a [link |
| asio.reference.HandleService handle service], as well as the additional |
| requirements listed below. |
| |
| In the table below, `X` denotes an object handle service class, `a` denotes a |
| value of type `X`, `b` denotes a value of type `X::implementation_type`, `ec` |
| denotes a value of type `error_code`, and `wh` denotes a value meeting [link |
| asio.reference.WaitHandler `WaitHandler`] requirements. |
| |
| [table ObjectHandleService requirements |
| [[expression] [return type] [assertion/note\npre/post-condition]] |
| [ |
| [`a.wait(b, ec);`] |
| [`error_code`] |
| [ |
| pre: `a.is_open(b)`.\n |
| \n |
| Synchronously waits for the object represented by handle `b` to become |
| signalled. |
| ] |
| ] |
| [ |
| [`a.async_wait(b, wh);`] |
| [`void`] |
| [ |
| pre: `a.is_open(b)`.\n |
| \n |
| Initiates an asynchronous operation to wait for the object represented by |
| handle `b` to become signalled. The operation is performed via the |
| `io_service` object `a.get_io_service()` and behaves according to [link |
| asio.reference.asynchronous_operations asynchronous operation] |
| requirements. |
| ] |
| ] |
| ] |
| |
| [endsect] |