PHP:限制卷曲同时线程

时间:2011-10-27 12:16:04

标签: php curl

如何在使用Curl和PHP时限制同时线程?

3 个答案:

答案 0 :(得分:2)

您可以使用内置任何内置功能,但您可以存储当前活动会话数量的计数。打开卷曲会话后,您会增加计数,当您收到回复并关闭会话时,您会减少计数。

例如,您可以将计数存储在文件中。只需打开文件,读取计数,增加或减少它,然后再将其保存在文件中。

答案 1 :(得分:1)

我使用的是这样的shell_exec函数:

$max_threads = 30;
if(shell_exec('ps -ef | grep "curl" | wc -l') < $max_threads)) {  
    shell_exec('curl http://www.google.com');  
}

if语句将检查计算机上与“curl”对应的当前工作线程数。

但这意味着您将通过shell_exec函数而不是通过PHP API启动curl。

答案 2 :(得分:1)

您可以使用curl_multi_ *函数同时处理多个curl句柄,设置18个会话并在一堆中执行它们。取决于任务。

read more