Classe CComAutoThreadModule
A partire da ATL 7,0, CComAutoThreadModule è obsoleto: vedere Classi del modulo ATL per ulteriori informazioni.
Importante |
---|
Questa classe e i relativi membri non possono essere utilizzati nelle applicazioni eseguite in Windows Runtime. |
template<
class ThreadAllocator= CComSimpleThreadAllocator
>
class CComAutoThreadModule :
public CComModule
Parametri
- ThreadAllocator
[in] la classe che gestisce selezione del thread.Il valore predefinito è CComSimpleThreadAllocator.
Membri
Metodi
Selezionare un thread e viene quindi creato un oggetto in apartment collegato. |
|
(Proprietà statica) calcola dinamicamente il numero di thread per il modulo in base al numero di processori. |
|
Crea i thread di modulo. |
|
Incrementa il conteggio dei blocchi sul modulo e nel thread corrente. |
|
Decrementa il conteggio dei blocchi sul modulo e nel thread corrente. |
Membri di dati
Membri di dati
Contiene l'identificatore del thread corrente. |
|
Gestisce la selezione del thread. |
|
Contiene il numero di thread nel modulo. |
|
Gestisce gli apartment di modulo. |
Note
[!NOTA]
Questa classe è obsoleta, essendo sostituendo le classi derivate CAtlModule e CAtlAutoThreadModule.Le informazioni che seguono forniscono con le versioni precedenti ATL.
CComAutoThreadModule deriva da CComModule per implementare un server di apartment- modello e di raccolte COM per i file EXE e i servizi Windows.CComAutoThreadModule utilizza CComApartment per gestire un apartment per ogni thread nel modulo.
Derivare il form da CComAutoThreadModule quando si desidera creare oggetti in più apartment.È necessario includere anche la macro DECLARE_CLASSFACTORY_AUTO_THREAD nella definizione di classe dell'oggetto per specificare CComClassFactoryAutoThread come class factory.
Per impostazione predefinita, COM ATL AppWizard (la creazione guidata progetto ATL in Visual Studio .NET). derivare il form da CComModule.Per utilizzare CComAutoThreadModule, modificare la definizione della classe.Di seguito è riportato un esempio:
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;
};
Gerarchia di ereditarietà
IAtlAutoThreadModule
CComAutoThreadModule
Requisiti
Header: atlbase.h