2016-11-30 3 views
1

어떤 이유로 elixir --detached의 pid가 $와 같지 않습니다! 예를 들어엘릭서 - 분리 된 pyd

:

elixir --detached -S mix run --no-halt & echo $! 

ps aux | grep 'mix run' 

출력 PID가 다른.

정상적인 동작입니까? 나는 nohup을 시도했지만 다른 문제가 있습니다.

+0

당신은'만능 --blah'의 pid는 어쩌구 믹스'의 PID 동일하게 기대하는 이유 '? – mudasobwa

+0

내 생각에 두 경우 모두 .beam 프로세스가 될 것이고 elixir/적절한 args를 사용하여 erlang-vm을 호출하는 별칭을 혼합하십시오. – sunprophit

+0

포크가 발생했습니다 - $! 부모 프로세스 ID를 돌려 줄 것이지만 자식은 백그라운드에서 실행중인 실제 생각입니다. 질문 - 왜 pid가 필요한가요? – cdegroot

답변

0

동일한 문제가 발생하여 해결책을 찾았습니다. here. 내 경우
나는 그것은 추한 보일 수 있습니다

$ elixir --detached -e "File.write! 'tmp/pids/bot.pid', :os.getpid" -S mix run --no-halt 

$ cat tmp/pids/bot.pid 
21352 

$ ps aux | grep mix 
deployer 21352 50.2 9.1 2234544 45788 ?  Sl 12:21 0:02 /usr/lib/erlang/erts-9.0/b 

로 끝날하지만 그것은 작동합니다 :)