2011-05-11 4 views
5

코드 블록을 시작할 수 있습니까 (함수 호출 만 가능). 특정 시간 내에 실행하지 않으면 건너 뜁니다.코드 블록에 대한 시간 제한을 설정할 수 있습니까?

//give this function 10 seconds to execute 
$value = mega_function();// could take anything from 1-1000 seconds 
//if 10 seconds have passed and the value is still not set, abort it and set $value = false; 

답변

7

번호 당신은 컬 또는 file_get_contents()를 사용하거나

  • 전화에 외부 파일 내부의 기능을 할 것이다 - 당신은 거기

  • 시간 제한을 설정 내부의 시간을 추적 할 수 있습니다 필요한 경우 mega_function()return().

mega_function()은 무엇입니까?

+0

메가 함수는 다양한 텍스트 블록을 해석하는 프로그램이므로 빠른 결과를 얻으려면 지금은 더 많은 시간이 필요한 코드를 건너 뛰고 싶습니다. 코드를 최적화하고 다른 언어를 사용해야 할 것입니다. PHP,하지만 내 도구를 가지고있다. – Moak

+1

실제로 외부 프로그램을 호출하면,'mega_function()'내부에서 외부 프로세스를 죽이고 시간을 추적 할 수있다. – tobyodavies

+0

PHP에서 프로세스를 시작하고 PID를 검색하여 relase 제어. 그런 다음 외부 스크립트에서 PID 상태를 몇 초 동안 확인하십시오. –

0

스레드로보고 시도하지만 PHP :이 같은 일을 할 어색 수 있습니다

http://php.net/manual/en/function.pcntl-fork.php보고 완료 아이 기다리고, 차일을 만들어 그들 사이에 신호를 보내기위한 모든 pnctl 관련 기능 또는 스레드를 죽이는.

관련 문제