2016-10-03 6 views
0

응용 프로그램을 시작할 때 반환 값은 pid 또는 오류 여야합니다.한 번만 실행되는 프로그램의 엘릭서 응용 프로그램 사용

처리를 한 번만 실행하는 프로그램에 응용 프로그램을 사용할 수 있습니까? 뭔가.

defmodule MyApp do 
    use Application 

    def start(_type, _args) do 
    # Do stuff 
    {:done, :normal} 
    end 
end 
+0

응용 프로그램은 강력 할 필요가 장기 실행 프로그램입니다 ... 예를 들어 콘솔 스크립트와 같이 일회용으로 쓰이는 경우, 왜 그것을 스크립트 (.exs?)로 모델링하지 않을까요? 그리고 이것이 견고하기위한 것이라면 왜 응용 프로그램 모델이 문제가되는 것입니까? – bottlenecked

+0

왜 OTP 응용 프로그램이 필요합니까? – mudasobwa

+0

답변은 응용 프로그램을 사용하지 않고 escript를 작성하는 것입니다. 올바른 믹스 프로젝트가 무엇인지 정확히 모르겠습니다. 아마 질문은 믹스 프로젝트가 단일 실행 프로그램처럼 보이는 것입니다. –

답변

1

@Peter가 지나치게 복잡해졌습니다. 원하는 것은 엘릭시어 스크립트 (exs 파일)입니다. 다음 예제로 시작하십시오.

defmodule MyApp do 
    def my_test_func do 
    IO.puts "Hello world!" 
    end 
end 

MyApp.my_test_func 

코드를 test1.exs으로 저장하십시오. 그런 다음 명령 프롬프트에서 elixir test1.exs을 통해 실행할 수 있습니다. 간단한 스크립트에 gen_server이 필요하지 않습니다. http://elixir-lang.org/docs/stable/elixir/System.html#content을 당신은 여기 비약 스크립트의 주제에 대해 좀 더 볼 수 있습니다 :

당신은 여기에 OS와 상호 작용에 대한 자세한 내용을 찾을 수 있습니다 http://elixir-lang.org/getting-started/introduction.html#running-scripts