# Class type Nethttpd_engine.extended_async_environment

    class type extended_async_environment = object .. end

Inherits

- `extended_environment`

## Environment also providing asynchronous views to I/O

    method input_ch_async : Uq_engines.async_in_channel

This is the `input_ch` channel taken as asynchonous channel. This type of channel indicates when data is available to read, and also sends notifications. Note that this is only an alternate interface of the `input_ch` object.

The method `can_input` returns true when there is at least one byte of the body to read, or the EOF has been seen. The channel buffers any arriving data (which can be limited in amount by `config_pipeline_size`).

The behaviour of this channel is influenced by the configuration option `config_input_flow_control`.

    method output_ch_async : Uq_engines.async_out_channel

This is the `output_ch` channel taken as asynchronous channel. This type of channel indicates when space is available for further output, and also sends notifications. Note that this is only an alternate interface of the `output_ch` object.

The method `can_output` returns `true` only when the internal buffer is empty, i.e. all data have been transmitted to the client. Independent of this, the channel buffers all data written to it.

The behaviour of this channel is influenced by the configuration option `config_output_flow_control`.