[英]How to convert a curl_init call into curl_multi_init
我试图弄清楚如何将连接功能从单个curl初始化更改为使用curl多重初始化。
这是现有的代码:
protected function getConnection()
{
if (!$this->connection) {
$this->connection = curl_init();
}
return $this->connection;
}
这是我尝试过的方法,但是它什么也没做,甚至没有抛出错误:
protected function getConnection()
{
$mh = curl_multi_init();
for($i=0; $i < 10; $i++)
{
{
if (!$this->connection) {
$this->connection[$i] = curl_init();
}
return $this->connection[$i];
}
curl_multi_add_handle($mh, $connection[$i]);
}
$running = 0;
do {
curl_multi_exec($mh, $running);
} while ($running > 0);
}
我究竟做错了什么? 提前致谢!
do {
curl_multi_exec($mh, $running);
} while ($running > 0);
这将消耗很多 CPU周期,而并不会做太多事情。
如果句柄有效,它最终应该完成,但是我们看不到如何填充连接-并且不清楚为什么初始化一个数组值,如果连接变量为false则从方法返回。 代码是卡在循环中还是只是在较早的if语句中返回? 如果是前一种情况,则按照链接的示例添加超时。 如果后者在调用方法之前填充连接数组。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.