我有一个子过程类,该子过程类计算两个整数的和,然后将其放入DataOutputStream中:
public class SubProcess {
public static void main(String[] args) throws IOException {
DataInputStream in = new DataInputStream(System.in);
DataOutputStream out = new DataOutputStream(System.out);
int a = in.readInt();
out.writeInt(a);
int b = in.readInt();
out.writeInt(b);
int result = a+b;
out.writeInt(result);
out.flush();
in.read();
out.close();
in.close();
}
}
当分别写a和b的两个值(例如12和47)时,结果为“ ei”。
另一方面,主进程将不会通过ReadInt()行读取类似DataInputStream的结果,并且会引发异常:
Exception in thread "main" java.io.EOFException
at java.io.DataInputStream.readInt(Unknown Source)
at testthread.MainProcess.main(MainProcess.java:21)
答案 0 :(得分:0)
看来主进程实际上并没有与子进程通信。从这两个类中删除该程序包并在cmd上运行主进程可避免出现异常。