我在让gen_server:reply在我的代码中的某些但不是所有情况下工作时遇到问题,尽管在我看来代码在结构上与它工作的区域相似,但它不工作。 我不知道这是否是由于一些概念上的误解或gen_server:reply/的不完整。 我已经创建了如下所示的 MRE 代码(使用 EUnit 测试并准备好即 ...
我在让gen_server:reply在我的代码中的某些但不是所有情况下工作时遇到问题,尽管在我看来代码在结构上与它工作的区域相似,但它不工作。 我不知道这是否是由于一些概念上的误解或gen_server:reply/的不完整。 我已经创建了如下所示的 MRE 代码(使用 EUnit 测试并准备好即 ...
感谢您查看我的问题。 我为 o'reilly francesco cesarini 和 simpson thompson 的问题环问题编写了一个代码,练习 4-2:过程环。 现在这是我的问题,我如何修改代码,以便在将消息终止发送到任何进程时,所有其他进程都应该自动终止,而不会通过环传播消息。 即使 ...
我是 erlang 的新手,我已经完成了代码,但是我需要这个问题的正确答案格式。 这是我的代码。 如果我输入任何整数,那么它必须在该数字上加 1。 如果给出了字符或浮点数或任何其他非 integer 它应该退出该过程。 这段代码工作正常但我需要以乒乓格式执行此操作,例如接收和结束,例如传递消息。 ...
谁能告诉我这是什么意思? 我是新手,我的朋友推荐我在这个网站上发帖。 顺便说一句,我是 Erlang 的新手。 如果可能的话,我想在编辑器中编写代码,但我什至不理解任何示例输入/输出的问题以及它如何工作的解释。 谢谢 ...
我有一个简单的主管,看起来像这样 当我在 shell 上运行它时,它工作得很好。 但是现在我想在不同的节点上运行这个主管的不同实例,称为 foo 和 bar (从erl -sname foo和erl -sname bar开始,来自一个名为 main erl -sname main的单独节点)。 这就 ...
我有一个 gen_server,它将对象的位置存储在这样的 ets 表中 问题是当主管启动my_gen_server并且进程崩溃并重新启动时,ets 表消失了,我丢失了所有 object 数据。 我搜索了这个问题,到处都说在 ets 表中存储数据有助于使 state 持续存在,但我无法在任何地方找到 ...
我在 Erlang 工作,主管是这样的: 和一个看起来像这样的 gen_server: move(Name, {DestX, DestY})基本上将 Name 的位置移动到新的 position。现在,当我启动主管然后启动 gen_server 并尝试使用erlang:exit(Pid1, die ...
我知道如何创建一个带有初始孩子列表的主管。 但是我怎样才能在运行时添加新的孩子或从这个列表中删除孩子的功能呢? 以这种方式,其他参与者可以在运行时调用这些函数来添加或删除孩子。 ...
我正在尝试使用 supervisor 和simple_one_for_one RestartStrategy,我想我有最新版本的 Erlang,但是当我尝试执行supervisor:terminate_child时它仍然以{error,simple_one_for_one}结束。 根据这个答案,如果 ...
我正在努力在 Erlang 中建立一个如下所示的主管: 这就是我的 gen_server 的样子: 我的 gen_server 工作得很好。 当我运行主管时: 我不明白{error, ok}是从哪里来的,如果有错误,那么是什么原因造成的。 所以这就是我检查孩子状态时得到的: 这意味着尽管它调用了 ...
在下面的 erl 命令中,我想传递配置文件和参数。 erl -config sys.config [参数] ...
当我阅读 Erlang OTP Action book 时,我在第 117 页发现了这个提醒: 使用您的 RPC 服务器,您可以尝试调用从服务器端可用的任何模块导出的任何函数,除了一个:您自己的 tr_server:get_count/0。 通常,服务器不能调用自己的 API 函数。 假设您从回调 ...
我正在尝试使用进程创建二叉树。 没有LeftNode和RightNode我成功创建树结构,但我想将LeftNode和RightNode保存在循环状态。 创建节点时应该传入什么函数参数? 更新:感谢 Nalin Ranjan。 更改这些行: 到: ...
尝试运行编程 erlang 书中的示例应用程序 sellaprime 应用程序。 我在主管内使用测试 function 测试了主管代码。 所以,主管应该没问题。 应用程序已加载,但应用程序启动遇到以下错误: 需要帮助定位错误。 这是文件sellaprime_app.erl : 和sellaprime ...
我有一个 ejabberd 服务器我有一个自定义模块my_apns_module.erl ,它由 ejabberd 服务器运行,如下所示: 在 init 中,我运行另一个 APNs 应用程序来发送推送通知。 https://github.com/inaka/apns4erl 这是有效的,因为我可以 ...
这个警告有多严重? 我可以在这个警告中使用这个模块吗? 这个警告的副作用是什么。 警告:未定义的回调 function 终止/3(行为 'gen_statem')** ...
假设我有一个 Zone 动态主管(zone 是一个 genserver),每个 Zone 都有自己的 Player 动态主管(player 是一个 genserver)。 所以每个区域都有很多玩家,而我有很多区域。 这样做的方法只是将 Player supervisor 的 PID 存储在 Zone ...
背景我正在尝试在我的应用程序中构建一个监督树,其中给定的 GenServer 必须监督其他 GenServer。 这不是一个应用程序,只是一个需要监督他人的简单 GenServer。 为此,我主要关注以下文章: http://codeloveandboards.com/blog/2016/03/2 ...
我是 Erlang 初学者,正在学习 OTP。 我在运行时尝试与主管交谈时收到noproc错误。 事实上,那个 supervisor 的start_link (由我实现,而不是 supervisor:start_link())似乎没有被执行,因为它的第一行中的io:fwrite甚至都没有被输出。 结 ...
我想向我的主管添加第二个孩子,但出现以下错误。 ** (Mix) 无法启动应用程序 cloner_worker:退出:ClonerWorker.Application.start(:normal, []) ** (EXIT) 引发异常:** (ArgumentError) 模块 ClonerWor ...