I am fairly new to using out of process components - I was lured by the promise of being able to have components working in the background on separate threads. So far I have had little success.
I have set up the following:
Client - instantiates out-of-process objects and fires the "execute" method to start their work. The client also captures event notices informing how far the components have progressed in their work.
Components - once the "execute" method is run a timer control is instantiated to split the activex exe thread from the client (as per the microsoft documentation) and the process then commences its work. The component fires events periodically as its work gets done.
My results:
While my components are running i am free to interact with my client - good - this is what i had intended. However, if i have 2 (completely different) out-of-process components instantiated by the client and executing concurrently - the first to have had its "execute" method run will block the second process until all its work is complete - I can tell this by the update events received by the client from the components. This is not what i wanted - I had wanted the components to both progress concurrently.
Am I facing an intrinsic VB limitation?
I am wary of using DoEvents - but is this my only option?
Is there some else (simple) that i may be missing?
I have set up the following:
Client - instantiates out-of-process objects and fires the "execute" method to start their work. The client also captures event notices informing how far the components have progressed in their work.
Components - once the "execute" method is run a timer control is instantiated to split the activex exe thread from the client (as per the microsoft documentation) and the process then commences its work. The component fires events periodically as its work gets done.
My results:
While my components are running i am free to interact with my client - good - this is what i had intended. However, if i have 2 (completely different) out-of-process components instantiated by the client and executing concurrently - the first to have had its "execute" method run will block the second process until all its work is complete - I can tell this by the update events received by the client from the components. This is not what i wanted - I had wanted the components to both progress concurrently.
Am I facing an intrinsic VB limitation?
I am wary of using DoEvents - but is this my only option?
Is there some else (simple) that i may be missing?