One way is to create a correlation id and attach a message listener to the parallel activities, when one task completes it can send a message to other parallel tasks to complete. If using a multi-instance loop you have a conditional wait condition where you can specify the remaining tasks to complete.