aboutsummaryrefslogtreecommitdiffstats
path: root/lib/stdlib/doc
diff options
context:
space:
mode:
authorHenrik Nord <[email protected]>2011-10-20 14:38:31 +0200
committerHenrik Nord <[email protected]>2011-10-20 14:38:37 +0200
commite21bc712b95b878afd9ab3d93ac27ded0bce7ccf (patch)
tree404f249c13b57209a98c045e428b94c254ff6ca1 /lib/stdlib/doc
parent6ef9aef50dbe839098e4330a97247aa21a15ecde (diff)
parent9679510bb27b569fd47394b6cb319916c3282de9 (diff)
downloadotp-e21bc712b95b878afd9ab3d93ac27ded0bce7ccf.tar.gz
otp-e21bc712b95b878afd9ab3d93ac27ded0bce7ccf.tar.bz2
otp-e21bc712b95b878afd9ab3d93ac27ded0bce7ccf.zip
Merge branch 'cf/supervisor_shutdown_infinity'
* cf/supervisor_shutdown_infinity: Add a warning to docs about workers' shutdown strategy Allow an infinite timeout to shutdown worker processes OTP-9648
Diffstat (limited to 'lib/stdlib/doc')
-rw-r--r--lib/stdlib/doc/src/supervisor.xml10
1 files changed, 9 insertions, 1 deletions
diff --git a/lib/stdlib/doc/src/supervisor.xml b/lib/stdlib/doc/src/supervisor.xml
index ec607d6e4c..54e7cab884 100644
--- a/lib/stdlib/doc/src/supervisor.xml
+++ b/lib/stdlib/doc/src/supervisor.xml
@@ -169,7 +169,15 @@ child_spec() = {Id,StartFunc,Restart,Shutdown,Type,Modules}
<c>exit(Child,kill)</c>.</p>
<p>If the child process is another supervisor, <c>Shutdown</c>
should be set to <c>infinity</c> to give the subtree ample
- time to shutdown.</p>
+ time to shutdown. It is also allowed to set it to <c>infinity</c>,
+ if the child process is a worker.</p>
+ <warning>
+ <p>Be careful by setting the <c>Shutdown</c> strategy to
+ <c>infinity</c> when the child process is a worker. Because, in this
+ situation, the termination of the supervision tree depends on the
+ child process, it must be implemented in a safe way and its cleanup
+ procedure must always return.</p>
+ </warning>
<p><em>Important note on simple-one-for-one supervisors:</em>
The dynamically created child processes of a
simple-one-for-one supervisor are not explicitly killed,