maybe this can help to understand: from the php's execution time point of
view, sleep(5) is seen as a(n almost) zero cost operation.
so if you have 30 secs execution time limit set, calling sleep(5); wouldn't
reduce the time left by 5 seconds, but only some microseconds, so you would
still have almost 30 seconds left to go.
more on that topic:
http://en.wikipedia.org/wiki/Time_(Unix)#User_Time_vs_System_Time


On Fri, Jan 4, 2013 at 5:48 PM, Amod Pandey <amodpan...@gmail.com> wrote:

> But it should stop at while ( I assume, else this setting is useless )?
> But it does not stop. It runs indefinitely unless I kill it !!
>
>
> On Fri, Jan 4, 2013 at 10:15 PM, Ferenc Kovacs <tyr...@gmail.com> wrote:
>
>> your code can run more than 30 seconds because (as I mentioned before and
>> linked you to the manual page) external calls including(sleep) doesn't
>> counted into the execution time of set_time_limit.
>>
>>
>>
>> On Fri, Jan 4, 2013 at 5:38 PM, Amod Pandey <amodpan...@gmail.com> wrote:
>>
>>> This is my code. And it continues to run. It should have stopped after
>>> completion of the while loop.
>>>
>>> php v 5.3.13
>>>
>>> <?php
>>> while(true) {
>>>   $file = fopen("test.txt","w");
>>>   $d=date('H:i:s');
>>>   echo fwrite($file,"$d");
>>>   fclose($file);
>>>   sleep(5);
>>> }
>>> ?>
>>>
>>>
>>> On Fri, Jan 4, 2013 at 9:51 PM, Ferenc Kovacs <tyr...@gmail.com> wrote:
>>>
>>>> hi,
>>>>
>>>> http://php.net/set_time_limit
>>>> see the note:
>>>> "The set_time_limit() function and the configuration directive
>>>> max_execution_time only affect the execution time of the script itself. Any
>>>> time spent on activity that happens outside the execution of the script
>>>> such as system calls using system(), stream operations, database queries,
>>>> etc. is not included when determining the maximum time that the script has
>>>> been running. This is not true on Windows where the measured time is real."
>>>> which means that your script can took more than 30 seconds before the
>>>> limit of max_execution_time kicks in.
>>>> request_terminate_timeout on the other hand doesn't care about what
>>>> does your script doing, it will terminate the script after the set amount
>>>> of time.
>>>>
>>>>
>>>>
>>>> On Fri, Jan 4, 2013 at 4:09 PM, Amod Pandey <amodpan...@gmail.com>wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>> I have configured max_execution_time = 30 in php.ini. There is no
>>>>> place it is altered.
>>>>>
>>>>> We are running php-fpm with nginx.
>>>>>
>>>>> If request_terminate_timeout is NOT set in the php-fpm then the script
>>>>> does not stop!! Even though the browser times out with 504. If I set
>>>>> request_terminate_timeout the php process timesout at the specified time. 
>>>>> I
>>>>> was assuming the php script will timeout at 30 seconds.
>>>>>
>>>>> Is this expected or anything wrong?
>>>>>
>>>>> --
>>>>> Amod
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Ferenc Kovács
>>>> @Tyr43l - http://tyrael.hu
>>>>
>>>
>>>
>>>
>>> --
>>> Amod
>>>
>>
>>
>>
>> --
>> Ferenc Kovács
>> @Tyr43l - http://tyrael.hu
>>
>
>
>
> --
> Amod
>



-- 
Ferenc Kovács
@Tyr43l - http://tyrael.hu

Reply via email to