When start another process from your workflow you can’t just not return from the Execute method until the process completes.  This would block the entire workflow from receiving any other events and would hold onto the thread.  Instead you need to use a queue to get notification when the process completes.