Можно ли запустить командную строку в Windows в отдельном потоке и использовать ее исключительно для печати на нее?
Причина, по которой я хотел бы сделать это, состоит в том, чтобы печатать журналы в одном окне, в то время как другое окноможет принимать команды ввода.
Что-то вроде:
public class Cmd {
public static void main(String args[]) throws Exception {
ExecutorService service = Executors.newSingleThreadExecutor();
service.submit(new ConsolePrinter());
service.awaitTermination(10000, TimeUnit.DECADES);
}
public static class ConsolePrinter implements Runnable {
private final Process process;
public ConsolePrinter () throws Exception {
process = Runtime.getRuntime().exec("cmd.exe /c start");
}
@Override
public void run() {
String message;
int count = 0;
while (/*console is open*/) {
message = "Message " + count;
// Print message in console
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
break;
}
}
}
}
}