안녕하세요, 초심자인데 순진한 소리가 들리면 제 질문에 대해 미안합니다.자바의 기본 프로그램 백그라운드에서 이벤트 리스너를 구현하는 방법은 무엇입니까?
백그라운드에서 실행되는 스레드를 구현하고 항상 듣고 싶습니다. 듣는 것은 말하자면, 메인 스레드에서 리턴 된 값을 체크하고, vue가 특정 수치를 초과하면, 어떤 메소드를 실행하거나, 프로그램을 종료한다고 말합니다.
나에게 아이디어를 줄 수 있거나 적어도 유용한 것을 알려줄 수 있다면 큰 도움이 될 것입니다.
당신의 대답에 감사드립니다. 처음에는 루프를 구현할 생각이었습니다. 사실 저는 윈도우 명령 행을 통해 외부 프로세스를 실행하고 있습니다. 그리고 그 대가로 나는 추적을 유지할 필요가있는 값을 읽습니다. String 형식의 응답을 받고 int를 사용하여 체크를 적용합니다. Runtime.getRuntime(). exec()를 통해이 외부 프로세스를 계속 호출하여 반복적으로 호출하고 매 2 초마다 정기적으로 값을 확인합니다. msec에 민감하지 않습니다. 이렇게하는 것이 현명한 생각이라고 생각합니까? –
@Sara - 당신의 계획은 그것을 다루는 적절한 방법으로 들립니다. ['ScheduledExecutorService'] (http://download.oracle.com/javase/6/docs/api/java/util/concurrent/ScheduledExecutorService.html)에서이 검사를 실행할 스레드를 만드는 것이 좋습니다. 고정 된 간격. – erickson
[이 StackOverflow 질문] (http://stackoverflow.com/questions/426758/running-a-java-thread-in-intervals) 및 허용 된 대답은'ScheduledExecutorService'를 사용하는 좋은 예를 제공합니다. – erickson