2010-04-26 18 views
5

Mam funkcję PHP, która pobiera żądanie Curl. Ta prośba czasami zajmuje więcej czasu niż się spodziewano, a zatem moja funkcja php wymaga więcej czasu.Jak sprawić, aby polecenie Curl nie powodowało oczekiwania?

W moim konkretnym przypadku wynik polecenia zwijania nie jest ważny. Czy jest to możliwe z curl tylko po to, aby umieścić żądanie i kontynuować bez czekania na zakończenie curl_exec()?

Odpowiedz

8

PHP nie obsługuje wielowątkowości, więc nie jest to możliwe. Możesz jednak ograniczyć ilość czasu, jaką cURL wykona.

$max_exe_time = 250; // time in milliseconds 
curl_setopt($curl_handle, CURLOPT_TIMEOUT_MS, $max_exe_time); 

Można przeczytać o tym i innych opcji konfiguracji: http://php.net/manual/function.curl-setopt.php

+1

znalazłem opcję CURLOPT_NOBODY przydatnych zbyt jak wspomniano tutaj http://stackoverflow.com/questions/770179/php-curl-head-request- trwa przez dłuższy czas na niektórych stronach. – understack

Powiązane problemy