Określanie modelu wątkowości projektu
Dostępne określić model wątka Projekt ATL są następujące makra:
Makro |
Wskazówki dotyczące używania |
---|---|
_ATL_SINGLE_THREADED |
Zdefiniowanie wszystkich obiektów użycie pojedynczy model wątka. |
_ATL_APARTMENT_THREADED |
Umożliwia zdefiniowanie, czy jeden lub więcej obiektów, użyj wątkowość. |
_ATL_FREE_THREADED |
Definiowanie użycie jednej lub więcej obiektów threading wolne lub neutralny.Istniejący kod może zawierać odwołania do makra równoważne _ATL_MULTI_THREADED. |
Jeśli nie zdefiniować dowolną z tych makr dla projektu, _ATL_FREE_THREADED będzie obowiązywać.
Makra wpływać na wydajność run-time następująco:
Określanie makra, który odpowiada obiektów w projekcie można zwiększyć wydajność run-time.
Określanie wyższego poziomu makra, na przykład określić _ATL_APARTMENT_THREADED, gdy wszystkie obiekty są pojedynczego wątku, nieznacznie zmniejszy wydajność run-time.
Określanie niższego poziomu makra, na przykład określić _ATL_SINGLE_THREADED, gdy jeden lub więcej obiektów za pomocą wątkowość lub wolnych wątków może spowodować awarię w czasie wykonywania aplikacji.
Zobacz Opcje, ATL prosty kreator obiektu opis threading modele dostępne dla obiektu ATL.