1---
2c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
3SPDX-License-Identifier: curl
4Title: CURLMOPT_MAX_CONCURRENT_STREAMS
5Section: 3
6Source: libcurl
7See-also:
8  - CURLMOPT_MAXCONNECTS (3)
9  - CURLOPT_MAXCONNECTS (3)
10Protocol:
11  - HTTP
12---
13
14# NAME
15
16CURLMOPT_MAX_CONCURRENT_STREAMS - max concurrent streams for http2
17
18# SYNOPSIS
19
20~~~c
21#include <curl/curl.h>
22
23CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_MAX_CONCURRENT_STREAMS,
24                            long max);
25~~~
26
27# DESCRIPTION
28
29Pass a long indicating the **max**. The set number is used as the maximum
30number of concurrent streams libcurl should support on connections done using
31HTTP/2 or HTTP/3.
32
33Valid values range from 1 to 2147483647 (2^31 - 1) and defaults to 100. The
34value passed here would be honored based on other system resources properties.
35
36# DEFAULT
37
38100
39
40# EXAMPLE
41
42~~~c
43int main(void)
44{
45  CURLM *m = curl_multi_init();
46  /* max concurrent streams 200 */
47  curl_multi_setopt(m, CURLMOPT_MAX_CONCURRENT_STREAMS, 200L);
48}
49~~~
50
51# AVAILABILITY
52
53Added in 7.67.0
54
55# RETURN VALUE
56
57Returns CURLM_OK if the option is supported, and CURLM_UNKNOWN_OPTION if not.
58