<useLegacyJit>-Element<useLegacyJit> Element

Legt fest, ob die Runtime den 64-Bit-JIT-Legacycompiler für die Just-in-Time-Kompilierung verwendet.Determines whether the common language runtime uses the legacy 64-bit JIT compiler for just-in-time compilation.

<configuration> <configuration>
   <Lauf Zeit >   <runtime>
     <useLegacyJit>    <useLegacyJit>

SyntaxSyntax

<useLegacyJit enabled=0|1 />

Beim Elementnamen useLegacyJit wird die Groß-/Kleinschreibung beachtet.The element name useLegacyJit is case-sensitive.

Attribute und ElementeAttributes and elements

In den folgenden Abschnitten werden Attribute sowie untergeordnete und übergeordnete Elemente beschrieben.The following sections describe attributes, child elements, and parent elements.

AttributeAttributes

AttributAttribute BeschreibungDescription
enabled Erforderliches Attribut.Required attribute.

Gibt an, ob die Laufzeit den Legacy-JIT-Compiler mit 64-Bit verwendet.Specifies whether the runtime uses the legacy 64-bit JIT compiler.

aktiviertes Attributenabled attribute

WertValue DescriptionDescription
00 Der Common Language Runtime verwendet den neuen 64-Bit-JIT-Compiler, der in der .NET Framework 4,6 und höheren Versionen enthalten ist.The common language runtime uses the new 64-bit JIT compiler included in the .NET Framework 4.6 and later versions.
11 Der Common Language Runtime verwendet den älteren JIT-Compiler von 64 Bit.The common language runtime uses the older 64-bit JIT compiler.

Untergeordnete ElementeChild elements

NoneNone

Übergeordnete ElementeParent elements

ElementElement BeschreibungDescription
configuration Das Stammelement in jeder von den Common Language Runtime- und .NET Framework-Anwendungen verwendeten Konfigurationsdatei.The root element in every configuration file used by the common language runtime and .NET Framework applications.
runtime Enthält Informationen über Laufzeitinitialisierungsoptionen.Contains information about runtime initialization options.

HinweiseRemarks

Beginnend mit dem .NET Framework 4,6 verwendet die Common Language Runtime standardmäßig einen neuen 64-Bit-Compiler für die Just-in-time (JIT)-Kompilierung.Starting with the .NET Framework 4.6, the common language runtime uses a new 64-bit compiler for Just-In-Time (JIT) compilation by default. In einigen Fällen kann dies zu einem Unterschied im Verhalten von Anwendungscode führen, der von der vorherigen Version des JIT-Compilers der 64-Bit-Version JIT-kompiliert wurde.In some cases, this may result in a difference in behavior from application code that was JIT-compiled by the previous version of the 64-bit JIT compiler. Indem Sie das enabled -Attribut <useLegacyJit> des-Elements 1auf festlegen, können Sie den neuen 64-Bit-JIT-Compiler deaktivieren und stattdessen die App mithilfe des Legacy-JIT-Compilers (64-Bit) kompilieren.By setting the enabled attribute of the <useLegacyJit> element to 1, you can disable the new 64-bit JIT compiler and instead compile your app using the legacy 64-bit JIT compiler.

Hinweis

Das <useLegacyJit> Element wirkt sich nur auf die JIT-Kompilierung 64-Bit ausThe <useLegacyJit> element affects 64-bit JIT compilation only. Die Kompilierung mit dem 32-Bit-JIT-Compiler ist nicht betroffen.Compilation with the 32-bit JIT compiler is unaffected.

Anstatt eine Konfigurationsdatei Einstellung zu verwenden, können Sie den Legacy-JIT-Compiler von 64 auf zwei weitere Arten aktivieren:Instead of using a configuration file setting, you can enable the legacy 64-bit JIT compiler in two other ways:

  • Festlegen einer UmgebungsvariablenSetting an environment variable

    Legen Sie COMPLUS_useLegacyJit die Umgebungsvariable entweder 0 auf (verwenden Sie den neuen 64-Bit-JIT 1 -Compiler) oder (verwenden Sie den älteren 64-Bit-JIT-Compiler):Set the COMPLUS_useLegacyJit environment variable to either 0 (use the new 64-bit JIT compiler) or 1 (use the older 64-bit JIT compiler):

    COMPLUS_useLegacyJit=0|1  
    

    Die Umgebungsvariable verfügt über einen globalen Gültigkeits Bereich. Dies bedeutet, dass Sie sich auf alle auf dem Computer durchgeführten Anwendungen auswirkt.The environment variable has global scope, which means that it affects all applications run on the machine. Wenn diese Einstellung festgelegt ist, kann Sie von der Einstellung für die Anwendungs Konfigurationsdatei überschrieben werden.If set, it can be overridden by the application configuration file setting. Beim Namen der Umgebungsvariablen wird die Groß-/Kleinschreibung nicht beachtet.The environment variable name is not case-sensitive.

  • Hinzufügen eines RegistrierungsschlüsselsAdding a registry key

    Sie können den Legacy-JIT-Compiler von 64 aktivieren, indem REG_DWORD Sie dem HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework -oder HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework -Schlüssel in der Registrierung einen-Wert hinzufügen.You can enable the legacy 64-bit JIT compiler by adding a REG_DWORD value to either the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework or HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework key in the registry. Der Wert hat den useLegacyJitNamen.The value is named useLegacyJit. Wenn der Wert 0 ist, wird der neue Compiler verwendet.If the value is 0, the new compiler is used. Wenn der Wert 1 ist, ist der ältere 64-Bit-JIT-Compiler aktiviert.If the value is 1, the legacy 64-bit JIT compiler is enabled. Beim Namen des Registrierungs Werts wird die Groß-/Kleinschreibung nicht beachtet.The registry value name is not case-sensitive.

    Das Hinzufügen des Werts HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework zum Schlüssel betrifft alle apps, die auf dem Computer ausgeführt werden.Adding the value to the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework key affects all apps running on the machine. Das Hinzufügen des Werts HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework zum Schlüssel wirkt sich auf alle apps aus, die vom aktuellen Benutzer ausgeführt werden.Adding the value to the HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework key affects all apps run by the current user. Wenn ein Computer mit mehreren Benutzerkonten konfiguriert ist, wirkt sich dies nur auf apps aus, die vom aktuellen Benutzer ausgeführt werden, es sei denn, der Wert wird den Registrierungs Schlüsseln für andere Benutzer ebenfalls hinzugefügt.If a machine is configured with multiple user accounts, only apps run by the current user are affected, unless the value is added to the registry keys for other users as well. Das hinzu <useLegacyJit> fügen des-Elements zu einer Konfigurationsdatei überschreibt die Registrierungs Einstellungen, sofern diese vorhanden sind.Adding the <useLegacyJit> element to a configuration file overrides the registry settings, if they're present.

BeispielExample

Die folgende Konfigurationsdatei deaktiviert die Kompilierung mit dem neuen 64-Bit-JIT-Compiler und verwendet stattdessen den älteren 64-Bit-JIT-Compiler.The following configuration file disables compilation with the new 64-bit JIT compiler and instead uses the legacy 64-bit JIT compiler.

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

Siehe auchSee also