When is it necessary to close curl connection and release resources consumed by it?
Why do I ask this question, well quite simply because I was told, that PHP garbage collector does all of this and sometimes there is no need to close DB connection or call the __destruct
method to release resources.
Since, that moment I actually started to think about where do I need to call it then? At the moment I'm interested with that question since I writing a small library for curl and I'd like to understand when do I need to user curl_close()
function.
Thank you all for discussion and explanation of it.
Results for 100 times curl_exec
(fetching url with cache avoiding):
for ($i = 0; $i < 100; ++$i) {
$c = curl_init();
curl_setopt($c, CURLOPT_URL, "http://www.google.com/?rand=" . rand());
curl_exec($c);
curl_close($c);
}
8.5 seconds
$c = curl_init();
for ($i = 0; $i < 100; ++$i) {
curl_setopt($c, CURLOPT_URL, "http://www.google.com/?rand=" . rand());
curl_exec($c);
}
curl_close($c);
5.3 seconds
Decision: get used to always use optimal code in your tasks. (source)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With