1

如果进程 A spawn_link() 的进程 B,然后是进程 B spawn() 的进程 C,如果我们将“spawn()”替换为“spawn_link()”,那么进程 A 在进程 C 中捕获错误的唯一方法是在进程 B 中?

我相信如果不替换它,进程 A 只会知道进程 B 是否死亡?

4

1 回答 1

3

当进程 B 产生进程 C 时,它基本上忘记了它;在这种情况下,如果 C 正在死去,进程 B 将对此一无所知。如果进程 B 使用 spawn_link 生成进程 C,进程 C 将作为子 (C) - 父 (B) 链接到 B:如果 C 死亡,将通知 B,并且根据实现,它可能会死亡(将通知 A)或进一步生存。

于 2012-11-18T20:54:56.857 回答