aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorChristopher Faulet <christopher@yakaz.com>2011-09-14 14:30:47 +0200
committerHenrik Nord <henrik@erlang.org>2011-10-10 17:36:40 +0200
commit9679510bb27b569fd47394b6cb319916c3282de9 (patch)
treea3281c2e1fed667cdd5a42aa316cf787a6affe39 /lib
parent2c4e984bd1d75524fd6444dc2032f8d758a945ae (diff)
downloadotp-9679510bb27b569fd47394b6cb319916c3282de9.tar.gz
otp-9679510bb27b569fd47394b6cb319916c3282de9.tar.bz2
otp-9679510bb27b569fd47394b6cb319916c3282de9.zip
Add a warning to docs about workers' shutdown strategy
Diffstat (limited to 'lib')
-rw-r--r--lib/stdlib/doc/src/supervisor.xml7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/stdlib/doc/src/supervisor.xml b/lib/stdlib/doc/src/supervisor.xml
index b4baf2f0a0..54e7cab884 100644
--- a/lib/stdlib/doc/src/supervisor.xml
+++ b/lib/stdlib/doc/src/supervisor.xml
@@ -171,6 +171,13 @@ child_spec() = {Id,StartFunc,Restart,Shutdown,Type,Modules}
should be set to <c>infinity</c> to give the subtree ample
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,