Share via


<useLegacyJit> Element

Bepaalt of de common language runtime de verouderde 64-bits JIT-compiler gebruikt voor Just-In-Time-compilatie.

<configuratie>
  <Runtime>
    <useLegacyJit>

Syntax

<useLegacyJit enabled=0|1 />

De elementnaam useLegacyJit is hoofdlettergevoelig.

Kenmerken en elementen

In de volgende secties worden kenmerken, onderliggende elementen en bovenliggende elementen beschreven.

Kenmerken

Kenmerk Beschrijving
enabled Vereist kenmerk.

Hiermee geeft u op of de runtime de verouderde 64-bits JIT-compiler gebruikt.

kenmerk ingeschakeld

Waarde Beschrijving
0 De common language runtime maakt gebruik van de nieuwe 64-bits JIT-compiler die is opgenomen in de .NET Framework 4.6 en latere versies.
1 De common language runtime maakt gebruik van de oudere 64-bits JIT-compiler.

Onderliggende elementen

Geen

Bovenliggende elementen

Element Beschrijving
configuration Het hoofdelement in elk configuratiebestand dat wordt gebruikt door de common language runtime en .NET Framework toepassingen.
runtime Bevat informatie over opties voor runtime-initialisatie.

Opmerkingen

Vanaf .NET Framework 4.6 maakt de Common Language Runtime standaard gebruik van een nieuwe 64-bits compiler voor JIT-compilatie (Just-In-Time). In sommige gevallen kan dit leiden tot een verschil in gedrag ten opzichte van toepassingscode die met JIT is gecompileerd door de vorige versie van de 64-bits JIT-compiler. Door het enabled kenmerk van het <useLegacyJit> element in te stellen op 1, kunt u de nieuwe 64-bits JIT-compiler uitschakelen en in plaats daarvan uw app compileren met behulp van de verouderde 64-bits JIT-compiler.

Notitie

Het <useLegacyJit> element is alleen van invloed op 64-bits JIT-compilatie. Compilatie met de 32-bits JIT-compiler wordt niet beïnvloed.

In plaats van een configuratiebestandsinstelling te gebruiken, kunt u de verouderde 64-bits JIT-compiler op twee andere manieren inschakelen:

  • Een omgevingsvariabele instellen

    Stel de COMPLUS_useLegacyJit omgevingsvariabele in 0 op (gebruik de nieuwe 64-bits JIT-compiler) of 1 (gebruik de oudere 64-bits JIT-compiler):

    COMPLUS_useLegacyJit=0|1  
    

    De omgevingsvariabele heeft een globaal bereik, wat betekent dat deze van invloed is op alle toepassingen die op de computer worden uitgevoerd. Als dit is ingesteld, kan deze worden overschreven door de instelling voor het configuratiebestand van de toepassing. De naam van de omgevingsvariabele is niet hoofdlettergevoelig.

  • Een registersleutel toevoegen

    U kunt de verouderde 64-bits JIT-compiler inschakelen door een REG_DWORD waarde toe te voegen aan de HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework sleutel of HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework in het register. De waarde heet useLegacyJit. Als de waarde 0 is, wordt de nieuwe compiler gebruikt. Als de waarde 1 is, is de verouderde 64-bits JIT-compiler ingeschakeld. De naam van de registerwaarde is niet hoofdlettergevoelig.

    Het toevoegen van de waarde aan de HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework sleutel is van invloed op alle apps die op de computer worden uitgevoerd. Het toevoegen van de waarde aan de HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework sleutel heeft invloed op alle apps die door de huidige gebruiker worden uitgevoerd. Als een computer is geconfigureerd met meerdere gebruikersaccounts, worden alleen apps die door de huidige gebruiker worden uitgevoerd beïnvloed, tenzij de waarde ook voor andere gebruikers wordt toegevoegd aan de registersleutels. Als u het <useLegacyJit> element toevoegt aan een configuratiebestand, worden de registerinstellingen overschreven, als deze aanwezig zijn.

Voorbeeld

Het volgende configuratiebestand schakelt compilatie met de nieuwe 64-bits JIT-compiler uit en gebruikt in plaats daarvan de verouderde 64-bits JIT-compiler.

<?xml version ="1.0"?>  
<configuration>  
  <runtime>  
    <useLegacyJit enabled="1" />  
  </runtime>  
</configuration>  

Zie ook