php多线程抓取网页( 第三种应用就是实现PHP的多线程任务--多线程的写法 )

优采云 发布时间: 2021-10-20 15:03

  php多线程抓取网页(

第三种应用就是实现PHP的多线程任务--多线程的写法

)

  使用curl实现多线程

  curl一般用来抓取网页,二是get或post数据,三是PHP中实现多线程任务

  让我们实现多线程。

  您可以返回:

  do while 的解释:

  因为$active要等url数据全部被接受后才会变为false,这里用curl_multi_exec的返回值来判断是否有数据,

  有数据时,会一直调用curl_multi_exec。如果一段时间没有数据,就会进入选择阶段。当有新数据到来时,可以唤醒它继续执行。

  这里的好处是没有了不必要的CPU消耗。更详细的解释:%D4%C2%D2%B9%C4%FD%ED%F8/blog/item/9dfcf4fbe6b84374024f563d.html

  这个多线程的编写步骤:

  第一步:调用 curl_multi_init

  第 2 步:循环调用 curl_multi_add_handle

  这一步需要注意的是curl_multi_add_handle的第二个参数是curl_init的子句柄。

  第三步:不断调用 curl_multi_exec

  第 4 步:根据需要调用 curl_multi_getcontent 以循环获取结果

  第五步:调用curl_multi_remove_handle,对每个字句柄调用curl_close

  第 6 步:调用 curl_multi_close

  多线程测试渲染:

  

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线