less than 1 minute read

프로그래밍할 때는 숫자를 인자로 넣어서 pid(프로세스 아이디)를 만들 일이 없지만, elixir 대화형 셸(iex, elixir’s interactive shell)을 사용해 프로세스에 직접 메시지를 보낼 때, 가끔 사용한다.

#PID<0.101.0>

이런 식으로 출력되는 로그를 보고 pid를 만들어서 메시지를 보내야 하는데, pid를 어떻게 만들면 될까?

iex> pid("0.101.0")
#PID<0.101.0>
iex> pid(0, 101, 0)
#PID<0.101.0>
iex> :c.pid(0, 101, 0)
#PID<0.101.0>

IEx.Helpers.pid/1, IEx.Helpers.pid/3 함수를 사용하거나 :c.pid/3 erlang 함수를 사용하면 된다. common interface module 이름을 c 로 짓다니 과감하시다.

참고