Performances des bibliothèques multithread
Le CRT monothread n'est plus disponible. Cette rubrique explique comment obtenir des performances maximales des bibliothèques multithread.
optimiser les performances
Les performances des bibliothèques multithread ont été améliorées et sont proches des performances des bibliothèques monothread, qui n'existent plus désormais. Pour ces situations quand des performances encore meilleures sont requises, il existe plusieurs nouvelles fonctionnalités.
Le verrouillage indépendant de flux de données permet de verrouiller un flux de données puis d'utiliser _nolock, fonctions qui accèdent au flux de données directement. Cela permet à l'usage verrouillé de s'élever hors des bucles critiques.
Les paramètres régionaux par thread réduisent le coût d'accès des paramètres régionaux pour les scénarios multithread (consultez _configthreadlocale).
Les fonctions liées aux paramètres régionaux (dont le nom se termine par _l) prennent les paramètres régionaux en tant que paramètre, ce qui supprime des couts substantiels (par exemple, printf, _printf_l, wprintf, _wprintf_l).
Les optimisations pour des pages de codes communes réduisent le coût de nombreuses opérations courtes.
La définition de_(CRT)_DISABLE_PERFCRIT_LOCKS force toutes les opérations d'E/S à assumer le modèle monothread d'E/S et à utiliser les formes _nolock des fonctions. Cela permet à des applications mono-thread très axées E/S d'avoir de meilleures performances.
L'exposition du gestionnaire de segment CRT vous permet de vérifier le segment (LFH) de fragmentation windows pour le segment CRT, ce qui peut améliorer considérablement les performances dans les cas très mis à l'échelle.