I have a small Java console application that runs a set of data through an algorithm. Given the size of the data and compute time, I often run 10 to 15 instances of the application, each working on a subset of the data.
All that is behaving ok. The application occasionally prints a sysout for my information. Rather than monitoring up to 15 console windows, I'd like all the sysouts to be displayed in a separate 'monitor' window. So instead of a sysout, each application would have something like
which would invoke a method on the monitor app.
I'm unsure how to do this because each console is a separate instance of the app. I assume I'd need to create a second app, but then I don't know how to invoke it and pass a message to it from the other applications. Remember this second monitoring app must be in a separate console window.
All this is happening locally so I'd rather avoid any solutions that use HTTP or complex networking protocols if possible
Finally it would be very desirable to be able to have two way communication i.e the monitor app could also invoke a method in the other apps.