CURLMOPT_MAX_PIPELINE_LENGTH - Man Page

maximum number of requests in a pipeline

Synopsis

#include <curl/curl.h>

CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_MAX_PIPELINE_LENGTH,
                            long max);

Description

No function since pipelining was removed in 7.62.0.

Pass a long. The set max number will be used as the maximum amount of outstanding requests in an HTTP/1.1 pipeline. This option is only used for HTTP/1.1 pipelining, not for HTTP/2 multiplexing.

When this limit is reached, libcurl will use another connection to the same host (see CURLMOPT_MAX_HOST_CONNECTIONS(3)), or queue the request until one of the pipelines to the host is ready to accept a request.  Thus, the total number of requests in-flight is CURLMOPT_MAX_HOST_CONNECTIONS(3) * CURLMOPT_MAX_PIPELINE_LENGTH(3).

Default

5

Protocols

HTTP(S)

Example

CURLM *m = curl_multi_init();
/* set a more conservative pipe length */
curl_multi_setopt(m, CURLMOPT_MAX_PIPELINE_LENGTH, 3L);

Availability

Added in 7.30.0

Return Value

Returns CURLM_OK if the option is supported, and CURLM_UNKNOWN_OPTION if not.

See Also

CURLMOPT_PIPELINING(3), CURLMOPT_MAX_HOST_CONNECTIONS(3),

Referenced By

CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE(3), CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE(3), CURLMOPT_PIPELINING(3), curl_multi_setopt(3).

April 26, 2023 ibcurl 8.1.1 libcurl