class type http_engine_config =Inherits
method config_input_flow_control :
true, the engine stops reading input tokens from the HTTP kernel when
there is data in the input channel of the engine not yet read. If
all available input tokens are fetched from the kernel and buffered up
in the input channel.
In general, this should be set to
true. However, this is only possible
when the user of the engine is prepared for flow control. In particular,
all data contained in the input channel must be immediately read, or else
the engine blocks. By calling
input_ch_async # request_notification, the
user can be notified when there is data to read.
When set to
false, the engine never blocks, but the price is that the
input channel may become as large as needed to store the whole request.
config_limit_pipeline_size does not have any effect for engines.
method config_output_flow_control :
true, the engine signals the user when there is already enough data
to output, and no more output should be generated. The user can query
this state by calling
output_ch_async # can_output, and react
accordingly. The user can also ignore this signal, and the output channel
buffers all data.
false, the mentioned method
can_output returns always
turns off flow control in the case it is implemented by the user of the
engine, but actually not wanted.
The internal processing of data is not affected by this configuration option.
In doubt, set it to