Threading Models and Critical Sections Classes

 

The new home for Visual Studio documentation is Visual Studio 2017 Documentation on docs.microsoft.com.

The latest version of this topic can be found at Threading Models and Critical Sections Classes (ATL).

The following classes define a threading model and critical section:

  • CAtlAutoThreadModule Implements a thread-pooled, apartment-model COM server.

  • CAtlAutoThreadModuleT Provides methods for implementing a thread-pooled, apartment-model COM server.

  • CComMultiThreadModel Provides thread-safe methods for incrementing and decrementing a variable. Provides a critical section.

  • CComMultiThreadModelNoCS Provides thread-safe methods for incrementing and decrementing a variable. Does not provide a critical section.

  • CComSingleThreadModel Provides methods for incrementing and decrementing a variable. Does not provide a critical section.

  • CComObjectThreadModel Determines the appropriate threading-model class for a single object class.

  • CComGlobalsThreadModel Determines the appropriate threading-model class for an object that is globally available.

  • CComAutoCriticalSection Contains methods for obtaining and releasing a critical section. The critical section is automatically initialized.

  • CComCriticalSection Contains methods for obtaining and releasing a critical section. The critical section must be explicitly initialized.

  • CComFakeCriticalSection Mirrors the methods in CComCriticalSection without providing a critical section. The methods in CComFakeCriticalSection do nothing.

  • CRTThreadTraits Provides the creation function for a CRT thread. Use this class if the thread will use CRT functions.

  • Win32ThreadTraits Provides the creation function for a Windows thread. Use this class if the thread will not use CRT functions.

See Also

Class Overview