ATL a volné zařazování vláken
Atributy stránky ATL jednoduchý objekt Průvodce poskytuje možnost volného zřetězené Marshaller (FTM) do třídy.
Průvodce vygeneruje kód k vytvoření instance volného zřetězené Marshaller v FinalConstruct a uvolnění instanci v FinalRelease .A COM_INTERFACE_ENTRY_AGGREGATE makro je automaticky přidán do mapy COM, aby QueryInterface požadavky pro IMarshal zdarma zřetězené Marshaller zpracovávány.
Volného zřetězené Marshaller umožňuje přímý přístup rozhraní na objekt z libovolného vlákna ve stejném procesu urychlení volání mezi apartment.Tato možnost je určena pro třídy, které používají obě model podprocesu.
Při použití této možnosti přijme třídy odpovědnost za bezpečnost podprocesu jejich data.Objekty, které zdarma zřetězené Marshaller a potřebujete používat ukazatele rozhraní získané z jiných objektů navíc musí přijmout další kroky k zajištění toho, že jsou správně zařadit rozhraní.Obvykle to zahrnuje ukládání ukazatele rozhraní tabulky global interface (GIT) a získání ukazatele z GIT pokaždé, když je používán.ATL obsahuje třídu CComGITPtr vám použít uložené v GIT ukazatele rozhraní.
Viz také
Referenční dokumentace
When to Use the Global Interface Table
In-Process Server Threading Issues