Temp&latelt; -KlasseThreadAllocator = &Gt CComSimpleThreadAllocator;
CComAutoThreadModule-Klasse: öffentliche CComModule
Parameter
ThreadAllocator
[in] Die Klasse Verwaltung Thread-Auswahl. Der Standardwert ist CComSimpleThreadAllocator.
CComAutoThreadModule leitet sich von CComModule Thread-pool, Apartment-Modell COM-Server für exe-Dateien und Windows-NT-Dienste implementieren. CComAutoThreadModule verwendet CComApartment , um eine Wohnung für jeden Thread im Modul verwalten.
Leiten Sie Ihr Modul von CComAutoThreadModule ab , wenn Sie Objekte in mehreren Wohnungen erstellen möchten. Außerdem müssen Sie das DECLARE_CLASSFACTORY_AUTO_THREAD -Makro in Klassendefinition des Objekts an CComClassFactoryAutoThread als die Klassenfactory einschließen.
Standardmäßig wird die ATL COM AppWizard Ihr Modul von CComModuleableiten. Zum CComAutoThreadModuleverwenden, ändern Sie die Klassendefinition. Zum Beispiel:
klasse CMyModule: öffentliche CComAutoThreadModulelt;CComSimpleThreadAllocator >
{
Öffentliche:
LANGE entsperren)
{
LANG l = CComAutoThreadModule <ComSimpleThreadAllocator>:: entsperren ();
Wenn (l == 0)
PostThreadMessage (DwThreadID, WM_QUIT, 0, 0);
Zurück l;
}
DWORD DwThreadID;
};
Weitere Informationen über den Anwendungs-Assistenten finden Sie im Artikel Erstellen eines ATL-Projekts.
# include lt;atlbase.h>