2012-06-04 132 views
2

爲什麼在這段代碼中我需要調用2次curl_multi_exec函數。curl運行並行處理程序curl_multi_exec

在第一個循環中,我正在執行curl_multi_exec處理程序來運行子處理程序。當CURLM_CALL_MULTI_PERFORM與$ mrc不同時,循環結束。

在第二個循環中,我們從curl處理程序中找到結果,並且第一個循環再次執行,爲什麼?

<?php 

    do { 
     $mrc = curl_multi_exec($multiHandle, $active); 
    } while ($mrc == CURLM_CALL_MULTI_PERFORM); 

    while ($active && $mrc == CURLM_OK) { 
     if (curl_multi_select($multiHandle, $timeout) != -1) { 
      do { 
       $mrc = curl_multi_exec($multiHandle, $active); 
      } while ($mrc == CURLM_CALL_MULTI_PERFORM); 
     } 
    } 

?> 

的代碼PHP-Doc現場提取

回答

0

這些問題的答案就在這裏curl_multi_exec()

這很令人沮喪,因爲PHP的文檔在某些方面可能毫無用處......