### windows::basic_overlapped_handle

Provides Windows handle functionality for objects that support overlapped I/O.

    template<
        typename Executor = any_io_executor>
    class basic_overlapped_handle

##### Types

Name | Description
--- | ---
rebind_executor | Rebinds the handle type to another executor.
executor_type | The type of the executor associated with the object.
lowest_layer_type | An overlapped_handle is always the lowest layer.
native_handle_type | The native representation of a handle.

##### Member Functions

Name | Description
--- | ---
assign | Assign an existing native handle to the handle.
basic_overlapped_handle [constructor] | Construct an overlapped handle without opening it. — Construct an overlapped handle on an existing native handle. — Move-construct an overlapped handle from another. — Move-construct an overlapped handle from a handle of another executor type.
cancel | Cancel all asynchronous operations associated with the handle.
close | Close the handle.
get_executor | Get the executor associated with the object.
is_open | Determine whether the handle is open.
lowest_layer | Get a reference to the lowest layer. — Get a const reference to the lowest layer.
native_handle | Get the native handle representation.
operator= | Move-assign an overlapped handle from another. — Move-assign an overlapped handle from a handle of another executor type.
release | Release ownership of the underlying native handle.

##### Protected Member Functions

Name | Description
--- | ---
~basic_overlapped_handle [destructor] | Protected destructor to prevent deletion through this type.

The `windows::overlapped_handle` class provides the ability to wrap a Windows handle. The underlying object referred to by the handle must support overlapped I/O.

##### Thread Safety

Distinct objects: Safe.

Shared objects: Unsafe.

##### Requirements

Header: `asio/windows/basic_overlapped_handle.hpp`

Convenience header: `asio.hpp`