Condividi tramite


Elemento <forcePerformanceCounterUniqueSharedMemoryReads>

Indica se PerfCounter.dll utilizza l'impostazione del registro di sistema di CategoryOptions nell'applicazione .NET Framework versione 1.1 per determinare se caricare dati del contatore delle prestazioni dalla memoria condivisa specifica della categoria o dalla memoria globale.

<forcePerformanceCounterUniqueSharedMemoryReads 
enabled="true|false"/>

Attributi ed elementi

Nelle sezioni seguenti vengono illustrati attributi, elementi figlio e padre.

Attributi

Attribute

Oggetto di descrizione

enabled

Attributo obbligatorio.

Indica se PerfCounter.dll utilizza l'impostazione del registro di sistema di CategoryOptions per determinare se caricare dati del contatore delle prestazioni dalla memoria condivisa specifico della categoria o dalla memoria globale.

Attributo enabled

Value

Oggetto di descrizione

false

PerfCounter.dll non utilizza l'impostazione del registro di sistema di CategoryOptions Questa è l'impostazione predefinita.

true

PerfCounter.dll utilizza l'impostazione del registro di sistema di CategoryOptions.

Elementi figlio

Nessuno.

Elementi padre

Elemento

Oggetto di descrizione

configuration

Elemento radice in ciascun file di configurazione utilizzato in Common Language Runtime e nelle applicazioni .NET Framework.

runtime

Contiene le informazioni sull'associazione degli assembly e la Garbage Collection.

Note

In versioni di .NET Framework precedenti a .NET Framework versione 4, la versione di PerfCounter.dll caricata corrisponde al runtime caricato nel processo. Se un computer dispone sia della versione 1.1 di .NET Framework sia di .NET Framework 2.0, un'applicazione di .NET Framework carica la versione 1.1 di .NET Framework di PerfCounter.dll. Iniziando con .NET Framework 4, la versione installata più recente di PerfCounter.dll viene caricata. Ciò significa che un'applicazione di .NET Framework 1.1 caricherà la versione .NET Framework 4 di PerfCounter.dll, se .NET Framework 4 è installata nel computer.

Iniziando con .NET Framework 4, in caso di utilizzo di contatori delle prestazioni, PerfCounter.dll controlla che la voce del registro di sistema di CategoryOptions per ogni provider determini se leggere da memoria condivisa specifica della categoria o da memoria condivisa globale. PerfCounter.dll di .NET Framework 1.1 non legge questa voce del registro di sistema, perché non tiene presente la memoria condivisa specifica della categoria; legge sempre dalla memoria condivisa globale.

Per compatibilità con le versioni precedenti, non viene effettuato il controllo della voce del Registro di sistema CategoryOptions tramite la libreria PerfCounter.dll di .NET Framework 4, se quest'ultima è in esecuzione in un'applicazione .NET Framework 1.1. Viene semplicemente utilizzata la memoria condivisa globale, come PerfCounter.dll di .NET Framework 1.1. Tuttavia, è possibile istruire PerfCounter.dll .NET Framework 4 per controllare l'impostazione del registro di sistema di sistema abilitando l'elemento <forcePerformanceCounterUniqueSharedMemoryReads>.

NotaNota

L'abilitazione dell'elemento <forcePerformanceCounterUniqueSharedMemoryReads> non garantisce che sarà utilizzata memoria condivisa specifica della categoria.L'impostazione abilitata su true fa in modo soltanto che PerfCounter.dll faccia riferimento all'impostazione del registro di sistema di CategoryOptions.L'impostazione predefinita per CategoryOptions consente l'utilizzo di memoria condivisa specifica della categoria; tuttavia, è possibile modificare CategoryOptions per indicare che deve essere utilizzata la memoria condivisa globale.

La chiave del Registro di sistema che contiene l'impostazione CategoryOptions è HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services \<categoryName>\Performance. Per impostazione predefinita, CategoryOptions viene impostato su 3, istruendo PerfCounter.dll a utilizzare memoria condivisa specifica della categoria. Se CategoryOptions viene impostato su 0, PerfCounter.dll utilizza la memoria condivisa globale. I dati dell'istanza saranno riutilizzati solo se il nome dell'istanza creata è identico a quello dell'istanza riutilizzata. Tutte le versioni saranno in grado di scrivere nella categoria. Se CategoryOptions viene impostato su 1, la memoria condivisa globale viene utilizzata, ma i dati dell'istanza possono essere riutilizzati se il nome della categoria ha la stessa lunghezza della categoria riutilizzata.

Le impostazioni 0 e 1 possono condurre a perdite di memoria e al riempimento della memoria del contatore delle prestazioni.

Esempio

Nell'esempio seguente viene illustrato come specificare che PerfCounter.dll deve fare riferimento alla voce del registro di sistema di sistema di CategoryOptions, nel caso in cui debba utilizzare memoria condivisa specifica della categoria.

<configuration>
  <runtime>
    <forcePerformanceCounterUniqueSharedMemoryReads enabled="true"/>
  </runtime>
</configuration>

Vedere anche

Riferimenti

Schema delle impostazioni dell'ambiente di esecuzione

Altre risorse

Schema dei file di configurazione per .NET Framework