erlang相关内容

如何在Erlang中将整数列表连接为字符串?

我有一个看起来像这样的元组: {127,0,0,1} 现在我想将该元组作为字符串“ 127.0.0.1” 到外部库(地理IP库)。将此元组转换为字符串的最佳方法是什么? 解决方案 您可以使用以下代码: ip_to_string({I1,I2,I3,I4})-> list:concat([I1,“。”,I2,“。”,I3,“。”,I4]); ip ..
发布时间:2020-10-30 19:15:54 其他开发

如何编写节点列表的应用环境值?

使用钢筋释放时,我必须设置一个环境变量。这是一个节点列表。例如: vm.args #-zarah cluster_nodes ['zarah_slave_a@yus-iMac.local',' zarah_slave_b@yus-iMac.local','emacs@yus-iMac.local'] 但是运行时,shell会给出错误消息: ********** ..
发布时间:2020-10-30 19:15:30 其他开发

如何从数字列表中获取字符串?

我有一个Erlang符号列表: [104、105、106、107 ...] 。如何从此列表中获取字符串:“ hijk ...” ? 解决方案 作为数据类型的字符串在Erlang中不存在。 ing只是字符列表。 [104,105,106,107] 和“ hijk” 是完全等效的。 实际上,如果您在shell中键入原始列表,则会得到“字符串”: 1> [104、105、10 ..
发布时间:2020-10-30 19:15:27 其他开发

如何在Map包含具有传入值的键的函数中进行模式匹配?

因此,我正在创建IRC服务器,并且具有将用户从地图中删除的功能。这个想法是使用模式匹配,因此如果用户在地图上,则将调用一个函数的一个版本,否则将调用另一个函数。 我的第一个想法是请执行以下操作: remove_user_from_channel(User,Channel =#channel_details {users = UserMap =#{User:= _}}) -> Ch ..
发布时间:2020-10-30 19:15:23 其他开发

Erl无法连接到本地EPMD。为什么?

erl Erlang R14B04(erts-5.8.5)[源代码] [64位] [rq:1] [异步线程:0] [内核轮询:false] Eshell V5 .8.5(使用^ G终止) [root @ ip-10-101-61-85 ec2-user]#erl -sname foo {error_logger,{{2012,12,7},{3,17,8}},“协议:〜p:注册错误: ..
发布时间:2020-10-30 19:15:20 其他开发

我怎么知道RabbitMQ应用程序是否已经启动

我有一个C#代码,在Windows Server 2012 R2上安装了Rabbitmq 3.7.4,erlang 20.2,我需要知道应用程序(而非服务)何时启动。运行 rabbitmq-service install 和 rabbitmq-service start 后,我正在寻找一个命令行,该命令行指示应用程序正在运行。我知道 wait pid_file,wait --pid pid 命令, ..
发布时间:2020-10-30 19:15:16 C#/.NET

在erlang中打印数字的每个数字时出现问题

我正在尝试制作一个程序,该程序将读取一个数字,然后在列表中输出该数字的每个数字。但是,在我尝试使用数字8和9之前,大多数情况看起来都很好。该程序仅输出 \b \t 代替。 如果输入的数字包含8或9,并且同时还有其他数字,例如 283 ,它将正常打印。否则,如果只有8或9,例如 8 , 99 ,那么它将为我提供8和9(如果我没记错的话)。 我的程序如下: digitize(0)-> ..
发布时间:2020-10-30 19:15:12 其他开发

用于运行PHP + Erlang的Web服务器

我希望在Web服务器上运行PHP和Erlang。排除Apache,因为后端Erlang进程需要同时处理大约3000个请求。因此,肯定有一些内存占用较小的东西,例如lighttpd ... 您会推荐哪个?为什么? 解决方案 Erlang具有内置的Web服务器: http://yaws.hyber.org/ 您可以使用哪个。 如果您想将Erlang暴露在网络上,Yaws ..
发布时间:2020-10-30 19:15:10 PHP

在erlang接收语句中引入“保存队列”的目的是什么

我是erlang的新手,并从Joe Armstrong的“ Programming Erlang”开始教程。 我对选择接收中提到的“保存队列”感到困惑。 8.6。如果消息根本不匹配,为什么不直接删除它呢?将其放回邮箱以供以后处理的目的是什么?如果这是默认行为,那么这些垃圾消息(意味着它们无法匹配)可能会导致性能下降,因为它们会在不释放的情况下累积。 我想知道我是否误会了这部分。我试图检 ..
发布时间:2020-10-30 19:14:05 其他开发

过度使用Erlang的警卫?

我有以下函数,该函数需要一个像5的数字,并创建一个从1到该数字的所有数字的列表,因此请创建(5)。返回[1,2,3,4,5]。 我认为我使用过的守卫过度,并且想知道是否有更好的方法可以编写以下内容: create(N)-> create(1,N)。当N =:= M->时 create(N,M) [N];当N≤ 时创建(N,M)。 M-> [N] ++ create( ..
发布时间:2020-10-30 19:13:53 其他开发

Erlang中的函数链接

创建像Active Record或Hibernate这样的ORM很好,它应该像这样处理链接的查询: User =用户:new():for_login(«stackoverflow_admin»):for_password(«1984»):load()。 我们该怎么做?还是这样,在一行中-或至少在精神和含义上相似。 也许有一些预处理工具可以帮上忙? 解决方案 ..
发布时间:2020-10-30 19:12:48 其他开发

Erlang:变量未绑定

以下为什么说变量不受限制? 9> {,3}。 * 1:变量'Length'是未绑定的 很明显,长度应该为3。 我正在尝试使用类似模式匹配的函数,即: parse( ..
发布时间:2020-10-30 19:12:44 其他开发

如何将元组对列表转换为Erlang中的记录?

假设我有这个: -record(my_record,{foo,bar,baz})。 键值对= [{foo,val1}, {bar,val2}, {baz,val3}]。 Foorecord = #my_record {foo = val1,bar = val2,baz = val3}。 如何将密钥对转换为Foorecord? 解决方案 最简单的方 ..
发布时间:2020-10-30 19:12:40 其他开发

为什么使用erts_debug:size / 1原子的内存为零?

我使用 erts_debug:size / 1 计算erlang VM中原子的内存,但是我发现输出为零。谁能解释原因? 7> erts_debug:size(true)。 0 解决方案 原因是原子是与原子的数据一起插入原子表中,因此整个节点中只有一个原子副本。这意味着在您的数据中,原子只是原子表中的一个标记引用,不占用任何空间。因此大小为零。 所以它不是不一致 ..
发布时间:2020-10-30 19:12:36 其他开发

数据包有时会被串联

我正在尝试使用Erlang创建一个简单的服务器/应用程序。 我的服务器使用 gen_tcp:listen(Port,[list,{active,false} ,{keepalive,true},{nodelay,true}]),客户端使用 gen_tcp:connect(Server,Port,[list,{active,true},{ keepalive,true},{nodelay,tr ..
发布时间:2020-10-30 19:12:33 其他开发

erlang中的静态类型检查

我慢慢爱上了Erlang,只有一个大的大问题。 我是Standart ML和ocaml等语言的忠实粉丝具有强大的静态类型检查功能。 有没有一种很好的方法来在erlang中引入某种静态类型检查功能。我正在查看类型和 -spec 批注。 有人有不错的解决方案吗? 解决方案 我有到过那里!我喜欢OCaml和Erlang并定期使用它们。 当我开始使用Erlang时,我对OC ..
发布时间:2020-10-30 19:12:28 其他开发

允许主管的孩子利用重新启动功能,但是一旦通过最大重新启动操作,就不杀死主管?

我有一个 simple_one_for_one 主管来管理一组相当不稳定的孩子-他们通常由于外部原因而死亡,例如他们的网络连接被终止。 Erlang的监督系统对此非常出色-只需重新启动它们即可备份,一切都会正常进行。 问题发生在其中一个孩子的连接严重问题时并达到管理员的最大重新启动限制,此时管理员杀死了所有孩子,然后自杀。太好了,这在文档中已指定。但是,我的理想行为是让主管放弃重新启动该特定 ..
发布时间:2020-10-30 19:12:24 其他开发

Erlang阅读帖子请求

我正在尝试基于Erlang构建一个简单的Web服务器,到目前为止,我可以使用以下代码启动服务器。 教程参考 -module(helloworld)。 -export([ main / 1, run_server / 0, start / 0, service / 3, ])。 main(_)-> start(), 接收 停止->好的 结束。 run_serv ..
发布时间:2020-10-30 19:12:23 其他开发