사용자 도구

사이트 도구


java:process

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
마지막 판 양쪽 다음 판
java:process [2015/05/18 10:45]
kwon37xi
java:process [2015/05/18 10:49]
kwon37xi
줄 2: 줄 2:
   * [[http://stackoverflow.com/questions/1160656/runtime-exec-causes-duplicate-jvm-to-hang-indefinitely-until-killed-solaris-10|Runtime.exec causes duplicate JVM to hang indefinitely until killed (Solaris 10)]]   * [[http://stackoverflow.com/questions/1160656/runtime-exec-causes-duplicate-jvm-to-hang-indefinitely-until-killed-solaris-10|Runtime.exec causes duplicate JVM to hang indefinitely until killed (Solaris 10)]]
   * [[http://helloworld.naver.com/helloworld/textyle/1113548|hello world » Java에서 외부 프로세스를 실행할 때]]   * [[http://helloworld.naver.com/helloworld/textyle/1113548|hello world » Java에서 외부 프로세스를 실행할 때]]
-  * Java 에서 ''Runtime.exec()''로 프로세스를 띄우면 현재 프로세스의 모든 메모리를 복재한 자식 프로세스가 뜨기 때문에 심각한 메모리 문제를 야기할 수 있다.+  * Java 6 이하에서 ''Runtime.exec()''로 프로세스를 띄우면 현재 프로세스의 모든 메모리를 복재한 자식 프로세스가 뜨기 때문에 심각한 메모리 문제를 야기할 수 있다.
   * 해결책은 3가지 정도인데, 그 중에서 별도의 작은 프로세스를 띄워 소켓 통신하여 별도 프로세스에서 명령을 실행시키는 방식이 좋다.   * 해결책은 3가지 정도인데, 그 중에서 별도의 작은 프로세스를 띄워 소켓 통신하여 별도 프로세스에서 명령을 실행시키는 방식이 좋다.
 +  * [[https://github.com/axiak/java_posix_spawn|Java Posix Spawn]] 메모리 문제를 해결한 프로세스 생성 라이브러리
 +  * [[http://wrapper.tanukisoftware.com/doc/english/download.jsp|Java Service Wrapper]] 메모리 문제를 해결한 프로세스 생성 라이브러리
 +  * JDK 7부터는 Linux에서 ''fork()'' 함수 대신 ''vfork()'' 함수를 기본으로 호출한다. JDK 8부터 Solaris와 BSD에서는 ''posix_spawn''을 기본으로 호출한다.
java/process.txt · 마지막으로 수정됨: 2015/05/18 10:51 저자 kwon37xi