<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 in0
op (gebruik de nieuwe 64-bits JIT-compiler) of1
(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 deHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
sleutel ofHKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework
in het register. De waarde heetuseLegacyJit
. 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 deHKEY_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>