Boost.Asio provides Windows-specific classes that permit asynchronous wait operations to be performed on HANDLEs to kernel objects of the following types:
For example, to perform asynchronous operations on an event, the following object may be created:
HANDLE handle = ::CreateEvent(...); windows::object_handle file(my_io_context, handle);
async_wait() member functions
may then be used to wait until the kernel object is signalled.
HANDLEs are only available at compile time
when targeting Windows. Programs may test for the macro
to determine whether they are supported.