Erlang:{from,Pid,Ref}形式的这个进程标识符是什么?

时间:2013-05-14 03:22:27

标签: erlang

我现在面临一个问题。当我检查erl_crash.dump时,我发现了一些如下内容:

=proc:<0.19275.17>  
State: Scheduled  
Spawned as: proc_lib:init_p/5  
Spawned by: <0.18723.17>  
Started: Wed May 8 13:30:40 2013  
Message queue length: 1  
Number of heap fragments: 0  
Heap fragment data: 0  
Link list: [<0.20051.17>, <0.9976.18>, ..., **{from,<6524.13.0>,#Ref<6524.0.1.37040>}, {from,<6474.13.0>,#Ref<6474.0.1.36682>}, {from,<6470.13.0>,#Ref<6470.0.1.34219>}**, ...]

在proc&lt; 0.19275.17&gt;的链接列表中有类似 {from,Pid,Ref} 的内容。 我不知道这些奇怪的形成过程标识符是什么。我想也许它与“过程监控”有关。我对吗?我仍然想知道如何生成这样的过程标识符以及如何使用它们?

提前谢谢你:)

2 个答案:

答案 0 :(得分:5)

这意味着该流程由其他流程监控。来自文档:

  

如果使用过程监控,该字段也会告诉您哪个   监视有效的方向,即链接是“到”a   进程告诉您“当前”进程正在监视另一个进程   并且“来自”流程的链接会告诉您其他流程是   监控当前的。

您可以找到更多信息here

答案 1 :(得分:1)

我认为{from,&lt; 6524.13.0&gt;,#Ref&lt; 6524.0.1.37040&gt;}是您注册全局名称,因此全局名称服务器正在监控此过程。

更多信息:http://www.erlang.org/doc/man/global.html