Fri Feb 23 16:21:31 CET 2001
There are several reasons to this:
1) If the supervisor would count your explicit manipulations,
do you want it to immediately restart a terminated child? Most
often not. Therefore this management must be done outside the
2) Restarts are only done (and restart intensity exhausted)
by *illegal* terminations. Each child has a permanence (temporary,
transient or permanent) defining when it terminates illegally.
If explicit terminations done through the API shall be counted,
the semantics of illegal terminations must be extended to
cover different types of API initiated terminations.
>> When I call
>> supervisor:terminate_child(ThisSuper, ThatChild),
>> supervisor:restart_child(ThisSuper, ThatChild).
>> Then the supervisor doesn't count this towards the restart
>> frequency. That is, I can do this forever, and the supervisor will
>> never escalate.
More information about the erlang-questions