【问题标题】:Are Erlang message queues persistent across processes?Erlang 消息队列是否跨进程持久化?
【发布时间】:2011-07-29 21:11:21
【问题描述】:

这应该是一个简单的问题,但我对文档的了解不足以找到答案。

如果 OTP 主管在 gen_server 崩溃后重新启动它,新的子进程是继承崩溃进程的消息队列,还是在崩溃前发送但尚未被旧子进程处理的消息掉在地上?

【问题讨论】:

    标签: erlang erlang-otp


    【解决方案1】:

    不,一个进程永远不会继承前一个进程设置的任何状态。监督者只会使用最初用于启动它的相同参数重新启动进程。

    如果你想恢复状态,你应该确保这种状态以持久的方式保存(ETS 表、磁盘上的文件、数据库等)。

    【讨论】:

    • 好的,所以消息队列被认为是进程状态的一部分,而不是系统状态?
    猜你喜欢
    • 2023-04-05
    • 1970-01-01
    • 2011-06-30
    • 2012-03-25
    • 2011-10-12
    • 2015-02-16
    • 2016-11-30
    • 2018-09-24
    • 2018-09-12
    相关资源
    最近更新 更多