Udostępnij za pośrednictwem


Klasa CComAutoThreadModule

Od ATL 7.0 CComAutoThreadModule jest przestarzały: zobacz Klasy modułu ATL więcej informacji.

Ważna uwagaWażne

W aplikacjach, które są wykonywane w Windows Runtime nie można użyć tej klasy i jej członków.

template< 
class ThreadAllocator= CComSimpleThreadAllocator  
> 
class CComAutoThreadModule : 
public CComModule

Parametry

Członkowie

Metody

Elementu CreateInstance

Wybiera wątek, a następnie tworzy obiekt w apartamencie skojarzone.

GetDefaultThreads

(Statyczny) Dynamicznie oblicza liczbę wątków dla modułu na podstawie liczby procesorów.

Init

Tworzy moduł wątków.

Zablokuj

Zwiększa licznik blokady modułu i w bieżącym wątku.

Odblokowywanie

Zmniejsza licznik blokady modułu i w bieżącym wątku.

Członkowie danych

Członkowie danych

dwThreadID

Zawiera identyfikator bieżącego wątku.

m_Allocator

Zarządza zaznaczenia wątku.

m_nThreads

Zawiera liczbę wątków w module.

m_pApartments

Zarządza apartamenty modułu.

Uwagi

[!UWAGA]

Ta klasa jest przestarzały, zastąpione przez CAtlAutoThreadModule i CAtlModule klasy pochodne.Następujące informacje są do użytku ze starszych wydań ATL.

CComAutoThreadModulepochodzi z CComModule do wdrożenia serwera COM puli wątków, komórkowy model usług plików exe i systemu Windows.CComAutoThreadModuleużywa CComApartment apartament dla każdego wątku w module Zarządzanie.

Pochodzić z modułu CComAutoThreadModule kiedy chcesz utworzyć obiekty w wielu apartamenty.Musi również zawierać DECLARE_CLASSFACTORY_AUTO_THREAD makro w definicji klasy użytkownika obiektu do określenia CComClassFactoryAutoThread jako Fabryczna klasa.

Domyślnie, ATL AppWizard COM (ATL Kreator projektu programu Visual Studio .net) będzie pochodzić z modułu CComModule.Aby użyć CComAutoThreadModule, modyfikowanie definicji klasy.Na przykład:

class CMyModule : 
public CComAutoThreadModule<CComSimpleThreadAllocator>
{
public:
   LONG Unlock()
   {
      LONG l = CComAutoThreadModule<CComSimpleThreadAllocator>::Unlock();
      if (l == 0)
         PostThreadMessage(dwThreadID, WM_QUIT, 0, 0);
      return l;
   }

   DWORD dwThreadID;
};

Hierarchii dziedziczenia

_ATL_MODULE

CAtlModule

IAtlAutoThreadModule

CAtlModuleT

CAtlAutoThreadModuleT

CComModule

CComAutoThreadModule

Wymagania

Nagłówek: atlbase.h

Zobacz też

Informacje

Klasy modułów ALT

Inne zasoby

Omówienie klasy ATL