Pet*_*ton 8 pid process elixir
在erlang中,可以创建一个与进程不对应的pid.使用这样的例子可以发现这里在了解你一些二郎.
pid(0,250,0).
Run Code Online (Sandbox Code Playgroud)
有没有办法在长生不老药中做同样的事情?我目前关闭的是创建一个立即终止并使用该pid的进程.
fake_pid = Process.spawn(fn -> end)
Run Code Online (Sandbox Code Playgroud)
这种接缝就像是一个黑客,我不确定从未创建的pid和死pid之间是否会有一些细微的差别.
Gaz*_*ler 16
您可以直接在Elixir中使用pid/3 Erlang函数:
:c.pid(0,250,0)
Run Code Online (Sandbox Code Playgroud)
另外 - 只是一个不是来自Erlang的文档:
将X,Y,Z转换为pid.该功能仅在调试时使用.
出于您的目的,我将使用self()
测试代码。这将解决运行当前测试用例的过程。
如果您出于某种原因需要测试另一个 pid,那么您的使用Process.spawn/1
方式非常好,因为它确保 pid 未被占用(并且不指向系统中重要的东西)并且它已经死了(或活着,如果您在测试期间保持活动状态)。
Erlang:c.pid/3
或新的 Elixir 1.1IEx.Helpers.pid/3
只是为了在 shell 中使用方便的函数。