New in Symfony 2.4: Limit a Process Run with an idle Timeout
Contributed by
Johannes Schmitt
in #8651.
Since the release of Symfony 2.3, the stability of the Process component has been greatly improved thanks to the hard work of Romain Neutron. But today, I want to talk about a new feature that can be quite useful when dealing with long running processes, the ability to define an idle timeout.
Up until now, you were able to limit the time a process take to finish by
calling the setTimeout()
method; this is a the maximum number of seconds a
process can take to finish its work:
1 | $process->setTimeout(2 * 3600);
|
In Symfony 2.4, you can also define an idle timeout (via the
setIdleTimeout()
method); this is the maximum number of seconds a process
can run without outputting anything (on the standard or the error output):
1 | $process->setIdleTimeout(10 * 60);
|
When a timeout occurs, the Process throws a
Symfony\Component\Process\Exception\ProcessTimedOutException
. You can
make the difference between the two kind of timeouts by calling the
isGeneralTimeout()
or the isIdleTimeout()
method.
As with any Open-Source project, contributing code or documentation is the most common way to help, but we also have a wide range of sponsoring opportunities.
New in Symfony 2.4: Limit a Process Run with an idle Timeout symfony.com/blog/new-in-symfony-2-4-limit-a-process-run-with-an-idle-timeout
Tweet thisComments
https://github.com/symfony/symfony/pull/8651/files
Cheers.
Comments are closed.
To ensure that comments stay relevant, they are closed for old posts.
Christian Gärtner said on Aug 31, 2013 at 11:28 #1