April 22nd, 2020

What kind of apartment is the private apartment I created via CLSID_Context­Switcher?

Some time ago, I talked about how you can create COM apartments inside COM apartments. I forgot to mention what kind of apartment you get.

From what I can tell, the resulting private context has the same apartment model as the apartment that created it. If you are executing on a thread in a single-threaded apartment, and you create a CLSID_Context­Switcher, then the resulting context is also a single-threaded apartment. Conversely, if you are executing on a thread in a multi-threaded apartment, then the resulting context is also multi-threaded.

 

Topics
Code

Author

Raymond has been involved in the evolution of Windows for more than 30 years. In 2003, he began a Web site known as The Old New Thing which has grown in popularity far beyond his wildest imagination, a development which still gives him the heebie-jeebies. The Web site spawned a book, coincidentally also titled The Old New Thing (Addison Wesley 2007). He occasionally appears on the Windows Dev Docs Twitter account to tell stories which convey no useful information.

0 comments

Discussion are closed.