I understand IE WebBrowser control is a COM object that runs in a single thread apartment and thus cannot be easily threaded. My question is if two completely separate applications make a call to this COM control, does each get its own thread or does it handle both on the same thread behind the scenes in the core IE engine?
An example would be I have Test.EXE that does nothing more than process an extremely large website (let’s assume it takes a single thread 3 minutes to process). If I open this 30 times, would all 3 instances be still working in a single thread, thus not really speeding up the time it takes to process 30, or would each get its own thread / instance of IE and in theory process all 30 in about the same time it processes a single one?
I tried testing this and the more threads I add, the slower each seems to go (Even before my processor comes near maxed. My ram is not even a fraction).
Each application runs in its own process, so will have its own copy of the WebBrowser control. They cannot interfere with each other.