Prestazioni librerie multithreadMultithreaded Libraries Performance

CRT a thread singolo non è più disponibile.The single-threaded CRT is no longer available. In questo argomento viene illustrato come ottenere prestazioni massime dalle librerie con multithreading.This topic discusses how to get the maximum performance from the multithreaded libraries.

Massimizzazione delle prestazioniMaximizing performance

Le prestazioni delle librerie con multithreading sono state migliorate e sono vicine alle prestazioni delle librerie a thread singolo, ora eliminate.The performance of the multithreaded libraries has been improved and is close to the performance of the now-eliminated single-threaded libraries. Per i casi in cui sono richieste prestazioni superiori, esistono alcune nuove funzionalità.For those situations when even higher performance is required, there are several new features.

  • Il blocco di flusso indipendente consente di bloccare un flusso e quindi di usare le funzioni _nolock che accedono direttamente al flusso.Independent stream locking allows you to lock a stream and then use _nolock Functions that access the stream directly. Consente l'utilizzo del blocco da eseguire al di fuori dei cicli critici.This allows lock usage to be hoisted outside critical loops.

  • Le impostazioni locali per thread riducono il costo di accesso alle impostazioni locali per gli scenari con multithreading (vedere _configthreadlocale).Per-thread locale reduces the cost of locale access for multithreaded scenarios (see _configthreadlocale).

  • Le funzioni dipendenti dalle impostazioni locali (con nomi che terminano in _l) accettano le impostazioni locali come parametro, rimuovendo costo sostanziale (ad esempio, printf, _printf_l, wprintf, _wprintf_l).Locale-dependent functions (with names ending in _l) take the locale as a parameter, removing substantial cost (for example, printf, _printf_l, wprintf, _wprintf_l).

  • Le ottimizzazioni per le tabelle codici comuni riducono il costo di molte operazioni brevi.Optimizations for common codepages reduce the cost of many short operations.

  • Se si definisce _CRT_DISABLE_PERFCRIT_LOCKS, per tutte le operazioni I/O viene forzato l'uso di un modello I/O a thread singolo e dei form _nolock delle funzioni.Defining _CRT_DISABLE_PERFCRIT_LOCKS forces all I/O operations to assume a single-threaded I/O model and use the _nolock forms of the functions. Questo consente alle applicazioni a thread singolo altamente basate su I/O di ottenere migliori prestazioni.This allows highly I/O-based single-threaded applications to get better performance.

  • L'esposizione dell'handle heap CRT consente di abilitare Windows Low Fragmentation Heap (LFH) per l'heap CRT, che consente di migliorare notevolmente le prestazioni negli scenari altamente ridimensionati.Exposure of the CRT heap handle allows you to enable the Windows Low Fragmentation Heap (LFH) for the CRT heap, which can substantially improve performance in highly scaled scenarios.

Vedere ancheSee Also

Funzionalità della libreria CRTCRT Library Features