Condividi tramite


Prestazioni librerie multithread

CRT a thread singolo non è più disponibile. In questo argomento viene illustrato come ottenere prestazioni ottimali dalle librerie con multithreading.

Massimizzazione delle prestazioni

Le prestazioni delle librerie con multithreading sono state migliorate e sono vicine alle prestazioni delle librerie a thread singolo, ora eliminate. Per i casi in cui sono richieste prestazioni elevate, esistono alcune nuove funzionalità.

  • Il blocco indipendente dal flusso consente di bloccare un flusso e di utilizzare Funzioni _nolock per accedere direttamente al flusso. Consente utilizzo del blocco al di fuori di cicli critici.

  • Le impostazioni locali di thread riducono il costo di un accesso alle impostazioni locali per gli scenari multithreading (vedere _configthreadlocale).

  • Le funzioni dipendenti dalle impostazioni locali (con nomi che terminano in _l) accettano le impostazioni locali come parametro, rimuovendo il costo sostanziale (ad esempio printf, _printf_l, wprintf, _wprintf_l).

  • Le ottimizzazioni per le tabelle codici comuni riducono il costo si molte operazioni brevi.

  • Definendo _CRT_DISABLE_PERFCRIT_LOCKS vengono forzate tutte le operazioni di I/O ad ammettere un modello I/O a thread singolo e ad utilizzare i form _nolock delle funzioni. Questo permette di ottenere migliori prestazioni in caso di un uso elevato di operazioni I/O a thread singolo.

  • L'esposizione di handle di heap CRT consente di attivare il Windows Low Fragmentation Heap (LFH) per l'heap CRT, che consente di migliorare notevolmente le prestazioni negli scenari molto grandi.

Vedere anche

Riferimenti

Funzionalità libreria CRT