我正在尝试创建一个Erlang进程,可以监视自身并在退出时重新启动。到目前为止,我完全没有成功,因此没有任何代码可展示。在Erlang中是否可能实现这一点?如果可以,如何实现?
编辑:J Fritsch发布了一个链接,演示了如何监视自身,但仅限于一次。如果两次使用exit(Doctor,doctor),第二次将不起作用。有什么想法可以解决这个问题吗?
编辑:J Fritsch发布了一个链接,演示了如何监视自身,但仅限于一次。如果两次使用exit(Doctor,doctor),第二次将不起作用。有什么想法可以解决这个问题吗?
exit(Doctor, doctor)
,因为Doctor
不包含正在运行的医生进程的PID,而是新的一个。 - Hynek -Pichi- Vychodilexit(Pid, kill)
杀死了你的进程,你无法掩盖它。监督者是处理重启的方法,请使用它。J Fritsch 的示例在许多其他方面存在缺陷。 - Hynek -Pichi- Vychodil