|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
java.lang.Objectjava.lang.Process
public abstract class Process
ProcessBuilder.start()
메소드와 Runtime.exec
메소드는, 네이티브인 프로세스를 작성해,Process
의 서브 클래스의 인스턴스를 돌려줍니다. 이 인스턴스를 사용해, 프로세스의 제어나, 프로세스 정보의 취득 을 할 수가 있습니다. Process
클래스는, 프로세스로부터의 입력, 프로세스에의 출력, 프로세스 완료의 대기, 프로세스 종료 상태의 확인, 및 프로세스의 파기 (종료)를 실행하기 위한 각 메소드를 제공합니다.
예를 들어, 네이티브인 윈도우 처리 프로세스, demon 프로세스, Microsoft Windows 환경에서의 Win16/DOS 프로세스, 혹은 셸 스크립트라고 하는 프로세스입니다. 작성된 서브 프로세스는, 자신의 단말 또는 콘솔을 가지지 않습니다. 서브 프로세스의 표준 입출력 처리 (즉 stdin, stdout, 및 stderr)는, 3 개의 스트림 (getOutputStream()
,getInputStream()
,getErrorStream()
)에 의해 parent process에 리다이렉트(redirect) 됩니다. parent process는 이러한 스트림을 사용해, 서브 프로세스에 입력을 보내거나 서브 프로세스로부터의 출력을 취득하거나 합니다. 네이티브인 플랫폼에는 표준 입출력 스트림에 사용하는 버퍼의 사이즈가 한정되는 것도 있으므로, 서브 프로세스의 입력 스트림의 기입해 혹은 스트림 출력의 read가 실패했을 경우, 서브 프로세스는 블록 되는지, 데드락 상태가 될 가능성이 있습니다.
Process
객체에의 참조가 없어졌을 경우에서도, 서브 프로세스는 종료되지 않고, 비동기적으로 실행을 계속합니다.
Process
객체가 나타내는 프로세스의 실행에 대해서는,Process
객체를 소유하는 Java 프로세스와 비동기가 아니기도 하고, 병행이 아니거나 해도 괜찮습니다.
ProcessBuilder
,
Runtime.exec(String[], String[], File)
생성자 의 개요 | |
---|---|
Process ()
|
메소드의 개요 | |
---|---|
abstract void |
destroy ()
서브 프로세스를 종료합니다. |
abstract int |
exitValue ()
서브 프로세스의 종료 코드를 돌려줍니다. |
abstract InputStream |
getErrorStream ()
서브 프로세스의 에러 스트림을 가져옵니다. |
abstract InputStream |
getInputStream ()
서브 프로세스의 입력 스트림을 가져옵니다. |
abstract OutputStream |
getOutputStream ()
서브 프로세스의 출력 스트림을 가져옵니다. |
abstract int |
waitFor ()
필요한 경우에, 이 Process 객체가 나타내는 프로세스가 종료할 때까지 현재의 thread를 대기시킵니다. |
클래스 java.lang. Object 로부터 상속된 메소드 |
---|
clone , equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait |
생성자 의 상세 |
---|
public Process()
메소드의 상세 |
---|
public abstract OutputStream getOutputStream()
Process
객체가 나타내는 프로세스의 표준 입력 스트림에게 건네집니다. 구현상의 주의:출력 스트림의 버퍼 처리를 추천합니다.
public abstract InputStream getInputStream()
Process
객체가 나타내는 프로세스의 표준 출력 스트림로부터 건네받은 데이터를 가져옵니다. 구현상의 주의:입력 스트림의 버퍼 처리를 추천합니다.
ProcessBuilder.redirectErrorStream()
public abstract InputStream getErrorStream()
Process
객체가 나타내는 프로세스의 에러 출력 스트림로부터 건네받은 데이터를 가져옵니다. 구현상의 주의:입력 스트림의 버퍼 처리를 추천합니다.
ProcessBuilder.redirectErrorStream()
public abstract int waitFor() throws InterruptedException
Process
객체가 나타내는 프로세스가 종료할 때까지 현재의 thread를 대기시킵니다. 서브 프로세스가 벌써 종료하고 있는 경우, 이 메소드는 즉시 복귀합니다. 서브 프로세스가 종료하고 있지 않는 경우, 호출측 thread는 서브 프로세스가 종료할 때까지 블록 됩니다.
0
은 정상 종료를 나타낸다
InterruptedException
- 현재의 thread가 대기중에 다른 thread에 의해끼어들어졌을 경우, 대기를 종료해 InterruptedException
가 throw 된다public abstract int exitValue()
Process
객체가 나타내는 서브 프로세스의 종료 코드. 0
은 정상 종료를 나타낸다
IllegalThreadStateException
- 이 Process
객체가 나타내는 서브 프로세스가 아직 종료하고 있지 않는 경우public abstract void destroy()
Process
객체가 나타내는 서브 프로세스는 강제 종료됩니다.
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세: 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.