A customer wanted to use the Windows thread pool, but they also wanted to use COM from their work item. They saw in the COM documentation that each thread must call CoInitialize(Ex) before using COM, so they planned on doing something like this: thread_local bool isComInitialized = false; auto DoWork
