У меня есть класс подпроцесса, который вычисляет сумму двух целых чисел и затем помещает ее в 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 соответственно, результат будет "е».
В другой руке основной процесс не будет читать этот результат как DataInputStream через строку ReadInt (), и он выдает исключение:
Exception in thread "main" java.io.EOFException
at java.io.DataInputStream.readInt(Unknown Source)
at testthread.MainProcess.main(MainProcess.java:21)