Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
CrT s jedním vláknem už není k dispozici. Tento článek popisuje, jak získat maximální výkon z vícevláknových knihoven.
Maximalizace výkonu
Vylepšili jsme výkon vícevláknových knihoven a blíží se výkonu nově vyloučených knihoven s jedním vláknem. V takových situacích, kdy se vyžaduje ještě vyšší výkon, existuje několik nových funkcí.
Nezávislé zamykání datových proudů umožňuje uzamknout datový proud a pak používat
_nolockfunkce , které k datovému proudu přistupují přímo. Tato funkce umožňuje, aby se využití zámků střídá mimo kritické smyčky.Národní prostředí pro jednotlivá vlákna snižuje náklady na přístup k národnímu prostředí pro scénáře s více vlákny (viz
_configthreadlocale).Funkce závislé na národním prostředí (s názvy končícími na _l) přebírají národní prostředí jako parametr, čímž se odeberou dodatečné náklady (například
printf,_printf_l,wprintf,_wprintf_l).Optimalizace pro běžné kódové stránky snižují náklady na mnoho krátkých operací.
Definování
_CRT_DISABLE_PERFCRIT_LOCKSvynutí všechny vstupně-výstupní operace předpokládat model V/V s jedním vláknem a používat_nolockformy funkcí. Toto makro umožňuje vysoce V/V aplikacím s jedním vláknem dosáhnout lepšího výkonu.Vystavení úchytu haldy CRT umožňuje povolit haldu systému Windows s nízkou fragmentací (LFH) pro haldu CRT, která může výrazně zlepšit výkon ve vysoce škálovaných scénářích.
Viz také
Soubory C runtime (CRT) a standardní knihovny C++ (STL) .lib