进程
概念
进程(Process)是资源分配的基本单位。所有与该进程有关的资源,都被记录在进程控制块PCB中。以表示该进程拥有这些资源或正在使用它们。另外,进程也是抢占处理机的调度单位,它拥有一个完整的虚拟地址空间。当进程发生调度时,不同的进程拥有不同的虚拟地址空间,而同一进程内的不同线程共享同一地址空间。
创建
1.使用Runtime的方法创建进程
步骤
1.准备指令
2.创建Runtime对象
3.创建Process对象并调用Runtime对象
4.运行
注意:exec方法不支持不定长参数(ProcessBuilder是支持不定长参数的),所以必须先把命令参数拼接好再传进去。
import java.io.IOException;
//使用Runtime的方法创建进程
public class Process_Demo {
public static void main(String[] args) throws IOException {
String [] cmd={"cmd","/c","start dir"};
Runtime rt = Runtime.getRuntime();
Process proc=rt.exec(cmd);
}
}
2.使用ProcessBuilder的方法创建进程
步骤
1.准备指令
2.创建ProcessBuilder对象
3.创建Process对象并调用ProcessBuilder对象
4.运行
import java.io.IOException;
//使用ProcessBuilder的方法创建进程
public class Process_Demo2 {
public static void main(String[] args) throws IOException {
String [] cmd={"cmd","/C","start","netstat"};
ProcessBuilder pb=new ProcessBuilder(cmd);
Process ps=pb.start();
}
}