We know that a process can call another process. But based on the Solution Design Overview document:
A process can also call another as a child, enabling layers of processes to be created.
However, the way in which Blue Prism manages its memory needs to be considered carefully when thinking about using a child process. Unlike an object, a child process is not preserved in memory by the parent; once the child process has ended, the parent process releases the memory for the .Net Garbage Collector to reclaim. Because of this, if the child process is being used repeatedly by the parent, it is possible for unwanted memory leaks to build up if memory is being consumed by the child process (and its objects) faster than the Garbage Collector can clean up.
It is therefore recommended not to use a child process where it will be called repeatedly, e.g. in the case working loop. As an alternative use objects to wrap other object€™s actions.
If I have processA that needs to call processB and processC, possibly repeatedly. Will making an objectB (object) and objectC each calling processB and processC respectively be the solution?
So it will be something like:
processA > objectB (which executes processB) > objectC (which executes processC)
instead of:
processA > processB > processC