Hi Felix,
Because of the complexity for implementing sending messages between difference executions, I suggest you using simple fork/join to implement your requirement.
If you don't want to use fork/join, then you can consider this solution.
Create a thread and store main process id and its sub process ids, then let the thread checks when sub process ends. Once the thread finds a sub processed had ended, it could send a message to main process. The problem is you must control thread's lifecycle all be yourself, and have to prepare to handle the exception occured on process executing. It is mostly like a real time monitor management system. If you really want to do this, please make a good plan first.