CComSingleThreadModel
class CComSingleThreadModel
CComSingleThreadModel provides methods for incrementing and decrementing the value of a variable. Unlike CComMultiThreadModel and CComMultiThreadModelNoCS, these methods are not thread-safe.
Typically, you use CComSingleThreadModel through one of two typedef names, either CComObjectThreadModel or CComGlobalsThreadModel. The class referenced by each typedef depends on the threading model used, as shown in the following table:
Threading Model | |||
typedef | Single | Apartment | Free |
CComObjectThreadModel | S | S | M |
CComGlobalsThreadModel | S | M | M |
S=CComSingleThreadModel; M=CComMultiThreadModel
CComSingleThreadModel itself defines three typedef names. ThreadModelNoCS references CComSingleThreadModel. AutoCriticalSection and CriticalSection reference class CComFakeCriticalSection, which provides empty methods associated with obtaining and releasing ownership of a critical section.
#include <atlbase.h>