进程监控树。

出自:http://blog.sina.com.cn/s/blog_96b8a1540101540i.html

一、

并不是简单的通过spawn在子进程启动函数中启动一个进程然后返回{ok, Pid}就可以让子进程拥有出错自动重启的功能。实际上,需要使用proc_lib:spawn_link或者proc_lib:start_link启动子进程,才能在子进程出错退出时让supervisor自动重启它。

二、

proc_lib:start_link和proc_lib:spawn_link的不同之处在于:

前者proc_lib:start_link是同步创建子进程,后者proc_lib:spawn_link是异步创建子进 程,proc_lib:start_link调用后会阻塞,直到子进程初始化完毕,调用proc_lib:init_ack后才返回。

而 proc_lib:spawn_link一调用就会立即返回子进程ID。

原文地址:https://www.cnblogs.com/ribavnu/p/3784648.html