除了运行之外$ killall -9 beam.smp
,当我知道它时,如何以编程方式杀死Erlang节点-sname
?
如果我不想让心跳监视器重新启动该过程,我怎样才能确保对上述问题给出的任何答案都会导致心跳停止?
是否有适当的指南将Erlang部署为守护进程?
kill
并killall
用-9
是几乎总是错的.
您可以很容易地要求远程节点退出:
rpc:call(RemoteNode, init, stop, []).
我不知道是否会阻止heart
重新启动它,但我建议如果你希望停止它,你不应该以一种永不停止的方式运行它.
更新 - Zed指出init:stop
做对了heart
,所以上面rpc:call
是最好也是唯一的方法.