| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- .\" generated by cd2nroff 0.1 from CURLOPT_MAXLIFETIME_CONN.md
- .TH CURLOPT_MAXLIFETIME_CONN 3 "2025-01-17" libcurl
- .SH NAME
- CURLOPT_MAXLIFETIME_CONN \- max lifetime (since creation) allowed for reusing a connection
- .SH SYNOPSIS
- .nf
- #include <curl/curl.h>
- CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAXLIFETIME_CONN,
- long maxlifetime);
- .fi
- .SH DESCRIPTION
- Pass a long as parameter containing \fImaxlifetime\fP \- the maximum time in
- seconds, since the creation of the connection, that you allow an existing
- connection to have to be considered for reuse for this request.
- libcurl features a connection cache that holds previously used connections.
- When a new request is to be done, libcurl considers any connection that
- matches for reuse. The \fICURLOPT_MAXLIFETIME_CONN(3)\fP limit prevents
- libcurl from trying too old connections for reuse. This can be used for
- client\-side load balancing. If a connection is found in the cache that is
- older than this set \fImaxlifetime\fP, it is instead marked for closure.
- If set to 0, this behavior is disabled: all connections are eligible for reuse.
- .SH DEFAULT
- 0 seconds (i.e., disabled)
- .SH PROTOCOLS
- This functionality affects all supported protocols
- .SH EXAMPLE
- .nf
- int main(void)
- {
- CURL *curl = curl_easy_init();
- if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
- /* only allow each connection to be reused for 30 seconds */
- curl_easy_setopt(curl, CURLOPT_MAXLIFETIME_CONN, 30L);
- curl_easy_perform(curl);
- }
- }
- .fi
- .SH AVAILABILITY
- Added in curl 7.80.0
- .SH RETURN VALUE
- Returns CURLE_OK.
- .SH SEE ALSO
- .BR CURLOPT_FORBID_REUSE (3),
- .BR CURLOPT_FRESH_CONNECT (3),
- .BR CURLOPT_MAXAGE_CONN (3),
- .BR CURLOPT_TIMEOUT (3)
|