I have a scenario where I have to call multiple objects concurrently, and each object will call multiple other class's objects internally. After the execution of all child objects, it should return result back to parent object and finally, parent objects will return result back to Main thread. It is basically two level multi threading. I do not know which all things I should consider while implementing this scenario. Please help me out to solve this scenario. It would be better if anybody explain this scenario with a code example.
I have attached a picture which gives a clear understanding of the scenario.