小编use*_*996的帖子

如何在erlang中获取调用进程的进程ID?

A看了http://erlang.org/doc/apps/inets/http_client.html并找到了以下内容:

一个普通的异步请求.结果将发送到{http,{ReqestId,Result}}表单上的调用进程

      5 > {ok, RequestId} =
      http:request(get, {"http://www.erlang.org", []}, [], [{sync, false}]).
Run Code Online (Sandbox Code Playgroud) 在这种情况下,调用进程是shell,因此我们收到结果.

      6 >  receive {http, {RequestId, Result}} -> ok after 500 -> error end.
      ok
Run Code Online (Sandbox Code Playgroud)

http:request以这种方式调用后向我传递消息,但它如何知道我的进程ID?据我所知,http:request必须做"Pid!{http,{RequestId,Result}"才能将结果发送给我,但是它在哪里知道Pid的价值?

erlang

3
推荐指数
1
解决办法
5523
查看次数

标签 统计

erlang ×1