Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
当拥有派生端口的进程死亡并由主管重新启动时会发生什么?
有没有办法让老港口不随主人一起死去,让新主人“接管”?
如果做不到这一点,是否可以确保生成的进程在其端口死亡时终止?
首先,请注意您不希望端口所有者死亡。因此,将任何“危险”代码移至另一个进程,并使端口所有者尽可能愚蠢。这是 Erlang 的错误缓解方式。现在,如果那个进程死掉了,那么事情就很糟糕了,所以在这种情况下,回收端口也可能是聪明的。但既然我们把所有东西都搬走了,我们就指望这不会发生。
关于 2,端口将在终止时发送特定消息,因此您可以安排您的衍生进程优雅地检测到这一点并终止它。看
http://www.erlang.org/doc/reference_manual/ports.html