Questions tagged «erlang»

Erlang是一种通用的,垃圾回收的编程语言和运行时环境,内置对并发,分发和容错的支持。

6
演员模型:为什么Erlang / OTP特别?你能用另一种语言吗?
我一直在研究Erlang / OTP,因此,一直在阅读(好的,略读一下)演员模型。 据我了解,参与者模型只是一组功能(在Erlang / OTP中称为“进程”的轻量级线程中运行),它们仅通过消息传递相互通信。 用C ++或任何其他语言实现这似乎微不足道: class BaseActor { std::queue<BaseMessage*> messages; CriticalSection messagecs; BaseMessage* Pop(); public: void Push(BaseMessage* message) { auto scopedlock = messagecs.AquireScopedLock(); messagecs.push(message); } virtual void ActorFn() = 0; virtual ~BaseActor() {} = 0; } 每个进程都是派生BaseActor的实例。Actor仅通过消息传递相互通信。(即推动)。参与者在初始化时向中心地图注册自己,该地图允许其他参与者找到他们,并允许中心功能贯穿他们。 现在,我知道我在这里遗漏了,或者更确切地说,是在掩盖一个重要问题,即:缺乏屈服意味着单个Actor可能不公平地消耗过多时间。但是跨平台协程是C ++中使这一点变得困难的主要因素吗?(例如,Windows具有纤维。) 我还有什么想念的吗,或者模型真的很明显吗?

5
学习Erlang的最好方法是什么?
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 除了特定项目(尽管也欢迎)... 我应该在办公桌上使用哪些工具,书籍,文章和其他资源来帮助我学习Erlang? 另外,Erlang是否有移动运行时? 请指出正确的方向。 注意:是的,我已经访问了Erlang和Wikipedia,但我想听听一些可靠的,经验丰富的意见。
74 erlang 

15
您为什么决定使用Erlang来“反对”?
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 您是否真的尝试过Erlang(编程的方式,而不仅仅是阅读其中的文章),并决定反对该项目?如果是这样,为什么?另外,如果您选择返回原来的语言,或者使用其他功能语言,例如F#,Haskell,Clojure,Scala或其他某种语言,那么这也很重要,并说明原因。

4
在Erlang中使用trace和dbg
我正在尝试开始使用erlang:trace/3和dbg模块来跟踪实时生产系统的行为,而无需关闭服务器。 该文档是不透明的(轻描淡写),并且在线上似乎没有任何有用的教程。 我用了一整天做的就是捕捉什么是在一个特定的功能,试图一丝适用于发生Module:Function使用dbg:c和dbg:p,但与所有没有成功。 有人对在实时Erlang系统中如何使用跟踪有一个简洁的解释吗?

5
有人可以用Erlang解释Pid(进程标识符)的结构吗?
有人可以用Erlang解释Pid的结构吗? 点看起来像这样:<A.B.C>,例如<0.30.0>,但是我想知道这三个“位”(A,B和C)的含义是什么。 “ A”在本地节点上似乎始终为0,但是当Pid的所有者位于另一个节点上时,此值会更改。 是否可以仅使用Pid在远程节点上直接发送消息?像这样:<4568.30.0>!消息,而不必显式指定已注册进程的名称和节点名称({proc_name,Node}!消息)?
70 erlang  pid 

1
Erlang中的进程/消息和Smalltalk中的对象/消息有什么区别?
我试图了解Smalltalk中的对象/消息与Erlang中的进程/消息之间的区别。我阅读了有关该主题的以下文章。 据我了解,在Smalltalk中,所有事物都是一个对象,并且所有事物都具有相同的“对象/消息”抽象-甚至数字1都是只能通过消息传递才能到达的对象。是1在Erlang / Elixir中进行的过程吗?Erlang中的所有内容是否都是对消息/程序范例的响应?您可以向Erlang中的号码发送消息吗? 非常感谢。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.