2015-02-26 6 views
0

Я увидел кусок пример кода, мне интересно, зачем использовать два цикла do-while? в чем разница между двумя петлями? wait ответ онлайн, спасибо ~~Почему curl_multi_exec в двух циклах

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

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

ответ

1

Как показано, первый цикл предназначен для инициализации HTTP-клиентов. Обычно он выполняется только один раз. Затем во втором цикле отправляются HTTP-запросы и получаются ответы.

Это не очень удобно, если вы хотите, чтобы ваш скрипт что-то делал, ожидая обработки HTTP-запросов (вы могли бы поместить некоторые вещи, которые хотите сделать на отдельной странице, и называть это как завиток ресурс - но это немного грязно).

См. this page для более подробной информации и альтернативных конструкций.

 Смежные вопросы

  • Нет связанных вопросов^_^