这个问题也标记为“Erlang”,因为这些Elixir模块或多或少只是包装Erlang功能。
节点看起来像命名过程。它们可以同时执行功能,链接到其他节点,并像流程监控器一样工作。每个模块中的许多功能看起来都是一样的,增强了相似之处。
Node模块的价值是什么? Process没有提供什么?
答案 0 :(得分:6)
节点看起来像命名过程。
您似乎误解了Node是什么。 Node是Erlang VM的一个实例,作为一个操作系统进程运行。 Erlang Process是一个执行代码的单元,类似于操作系统线程但更轻。 Erlang进程在Erlang节点上运行,就像在操作系统上运行的操作系统进程一样。如果没有Erlang节点,Erlang进程就无法运行。
答案 1 :(得分:1)
这是两个截然不同的概念。节点是Erlang虚拟机的实例,进程是在虚拟机内运行的非常轻量级的线程。
,这是Elixir流程的定义在Elixir中,所有代码都在进程内运行。流程是孤立的 彼此之间并发运行并通过进行通信 消息传递。进程不仅是并发的基础 Elixir,但他们也提供建设分布式和 容错程序。
Elixir的流程不应与操作系统流程混淆。 Elixir的工艺非常轻巧 内存和CPU(与许多其他编程语言中的线程不同)。
节点是Erlang虚拟机的表示。以下是node模块的一些功能示例:
<强>活着?()强>
如果本地节点处于活动状态,则返回true
连接(节点)强>
建立与节点的连接
<强>断开(节点)强>
强制断开节点