백그라운드 작업을 수행하는 Java 파일을 호출합니다. 배경 (다른 Java 파일에서)에서 실행중인 스레드로 인해 jsp 페이지로 결과를 리턴 할 수 없습니다. return과 system.exit (0)을 동시에 사용할 수 없다는 것이 알려져 있습니다. 어쨌든 보이는 자바 파일의 쓰레드를 멈추고 그 결과를 리턴 할 수 있는가?백그라운드에서 실행중인 스레드를 중지 한 다음 결과를 반환하십시오.
답변
질문을 신중하게 작성하면 도움이됩니다. '다른 Java 파일에서 실행되는 스레드'와 같은 것이 없으므로 정확히 무엇을 의미하는지 명확하지 않습니다.
Java에서 임의의 스레드를 종료하는 간단하고 안전한 방법은 없습니다. 보통 가장 쉬운 방법은 ExecutorService을 사용하고 작업을 제출 한 다음 나중에 결과를 얻거나 작업 실행을 취소하는 데 사용할 수있는 반송 된 Future 개체를 보류하는 것입니다. 작업을 완료하기를 기다리지 않고 ExecutorService를 종료 할 수도 있습니다. 분명히 이러한 경우 취소 작업을 염두에두고 작성해야하므로 원하지 않는 부작용이 없습니다.
try {...} catch (InterruptedException ex) {...} 블록에 스레드를 래핑하는 경우 Thread.interrupt() 메서드 (http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Thread.html#interrupt())를 사용할 수 있습니다. 이렇게하면 스레드를 인터럽트 처리기로 보내어 결과를 반환하기 전에 필요한 항목을 정리할 수 있습니다.
나는 당신이 thread.isInterrupted()를 점검하는 실행 루프에서 어딘가에 있어야한다고 생각하는데, 그렇다면 인터럽트 처리기의 루프를 빠져 나와서 메인 프로그램에서 .interrupt()를 호출 할 때가있다. 스레드가 인터럽트 처리기로 점프하지 않습니다. 이 모든 세부 사항은 이전에 링크 된 페이지에 있습니다.
의도는 분명하지 않지만 Java Future
및 ScheduledFuture
인터페이스와이를 사용하는 멀티 스레딩 클래스를 살펴볼 수 있습니다.
- 1. 스레드를 일시 중지/일시 중지 한 다음 계속하는 방법은 무엇입니까?
- 2. 백그라운드에서 실행중인 ios 응용 프로그램 일시 중지
- 3. 백그라운드에서 실행중인 안드로이드에서 스레드를 중지하고 시작하는 방법
- 4. 실행중인 스레드를 새 스레드로 중지 및 바꾸기
- 5. 루비 실행중인 백그라운드에서
- 6. SQL - WHERE 절 다음 영업일에 결과를 반환하십시오.
- 7. 실행중인 jquery를 중지 한 다음 남은 위치에서 다시 시작합니다.
- 8. mySQL - 최상의 결과를 반환하십시오.
- 9. 자바에서 백그라운드에서 스레드를 실행하십시오
- 10. 항목을 삭제 한 후 JSON 결과를 반환하십시오.
- 11. 활동 내에서 실행중인 모든 실행중인 스레드 중지
- 12. 백그라운드에서 실행중인 Android 서비스
- 13. 백그라운드에서 실행중인 webview
- 14. 백그라운드에서 실행중인 프로그램 (JAVA)
- 15. 백그라운드에서 실행중인 응용 프로그램
- 16. 백그라운드에서 실행중인 활동 표시
- 17. 여러 json 결과를 반환하십시오.
- 18. 위젯이 백그라운드에서 실행되는 것을 중지 delete()
- 19. 안드로이드 프로세스에서 실행중인 스레드를 얻는 방법은 무엇입니까?
- 20. 특정 자바 스레드를 중지
- 21. 쿼리 결과를 목록 상자에 반환하십시오.
- 22. 백그라운드에서 실행중인 UI로 컨트롤을 업데이트하십시오. Winforms의 스레드
- 23. 실행중인 트랙 일시 중지
- 24. Android : 백그라운드에서 스레드를 실행하는 중
- 25. 안드로이드는 단일 라이브러리 함수를 실행중인 스레드를 중지합니다.
- 26. Blackberry 10 - 백그라운드에서 실행중인 앱
- 27. 백그라운드에서 실행중인 C++ 모니터 프로세스?
- 28. 새로운 활동에서 실행중인 스레드를 죽이는 방법
- 29. 속성 이름없이 Json 결과를 반환하십시오.
- 30. 함수에서 결과를 반환하십시오 (javascript, nodejs)