如果主管使用rest_for_one
重新启动策略,并且使用supervisor:start_child
将子项添加到其中,新孩子是否被认为是现有孩子的“之前”或“之后”?
或换句话说,如果现有的孩子为A
且新孩子为B
,B
会在A
死亡时死亡,或A
如果B
死了会死吗?我假设前者,但文档没有明确说明它。
答案 0 :(得分:1)
rest_for_one - if one child process terminates and should be
restarted, the 'rest' of the child processes -- i.e. the child processes after
the terminated child process in the start order -- are terminated. Then the
terminated child process and all child processes after it are restarted.
因此,如果你添加一个孩子,如果任何现有孩子死亡,但是新孩子不能杀死任何其他现有孩子,它将重新开始,这里的顺序是开始顺序。