【问题标题】:Does OTP gen_server intercept received messagesOTP gen_server 是否拦截收到的消息
【发布时间】:2020-02-27 16:36:41
【问题描述】:

我正在使用 OTP 的 gen_server。我可以使用向某个进程发送消息并接收响应的函数吗?我担心这个响应消息会被 get_server 拦截,因此由 handle_info 而不是我的函数处理。

如果我想拥有这样的功能,我该怎么做?

【问题讨论】:

    标签: erlang erlang-otp


    【解决方案1】:

    如果您在其中一个 gen_server 回调函数中有 receive 表达式,它不会被中断。但是,它会接收针对 gen_server 本身的消息,因此您可能希望使用非常特定的模式以便将其他消息留在进程邮箱中以供以后处理。

    请注意,这会使 gen_server 进程在等待响应消息时对其他调用无响应。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-05
      • 2014-04-06
      • 2022-01-19
      • 2012-03-17
      相关资源
      最近更新 更多