Have you got any idea what to do when you want to measure the time but not
in the loop?
Case: you want to limit the time of reading from an open socket (fread), the
other side doesn't answer, you wait and wait...
Piotr Plusa
----- Wiadomosc oryginalna -----
Od: "Brendan" <[EMAIL PROTECTED]>
Do: <[EMAIL PROTECTED]>
Wyslano: 23 maja 2001 01:54
Temat: [PHP-WIN] RE:escape loop on timeout
>
>
> Zak Greant wrote:
>
> > Johan Lundqvist wrote:
> > > This is a way of doing it:
> > >
> > > $s = time() + 10;
> > > for ($i = time(); $i <= $s; $i++) {
> > > print $i;
> > > }
> > >
> > > Will run for about ten seconds...
> >
> > Did you leave a bit of code out?
> > In most cases, this will run for only a few milliseconds. :)
> >
> > Try something like this instead:
> >
> > $timeout = 1; // Timeout in seconds
> > $start_time = time(); // Get the current time
> >
> > for ($x=0; $x < 1000000000; ++$x) {
> >
> > /*
> > // Check if we have gone over the time limit
> > // Only check every 1000 loops - this keeps
> > // us from chewing run time by checking the time
> > // all the time :)
> > */
> > if ( (0 === ($x % 1000)) && (time () - $start_time) > $timeout)
> > break;
> >
> > echo ($x, '<br>');
> > }
> >
> > --zak
> >
>
> ----------------
>
> Thanks guys
>
> sorry about the delay .. I am in Australia..
> checking the time each loop would only work if the loops complete
correctly
> .. if the process locks mid loop php wont reach the criterion break
because
> it deals with each command linearly. ie
>
> for (x=0;x!="array full";x++)
> dothisfunction(x);
> if ( (0 === ($x % 1000)) && (time () - $start_time) > $timeout)
> break;
> etc
>
> if dothisfunction() locks up wont the entire script freeze?
>
> maybe I am wrong..
>
> what I am after is something like alert() in Perl or the 'on error resume
> next' in ASP which runs externally to the loop and breaks to the next
> instance if it is taking too long...
> any ideas?
> cheers!
>
>
>
>
>
>
>
>
> --
> PHP Windows Mailing List (http://www.php.net/)
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> To contact the list administrators, e-mail: [EMAIL PROTECTED]
>
>
--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]