<useLegacyJit> , element
Określa, czy środowisko uruchomieniowe języka wspólnego używa starszego 64-bitowego kompilatora JIT na potrzeby kompilacji just in time.
<Konfiguracji>
<Środowiska wykonawczego>
<useLegacyJit>
Składnia
<useLegacyJit enabled=0|1 />
Nazwa useLegacyJit
elementu jest wrażliwa na wielkość liter.
Atrybuty i elementy
W poniższych sekcjach opisano atrybuty, elementy podrzędne i elementy nadrzędne.
Atrybuty
Atrybut | Opis |
---|---|
enabled |
Atrybut wymagany. Określa, czy środowisko uruchomieniowe używa starszego 64-bitowego kompilatora JIT. |
włączony atrybut
Wartość | Opis |
---|---|
0 | Środowisko uruchomieniowe języka wspólnego używa nowego 64-bitowego kompilatora JIT zawartego w .NET Framework 4.6 i nowszych wersjach. |
1 | Środowisko uruchomieniowe języka wspólnego używa starszego 64-bitowego kompilatora JIT. |
Elementy podrzędne
Brak
Elementy nadrzędne
Element | Opis |
---|---|
configuration |
Element główny w każdym pliku konfiguracji używanym przez środowisko uruchomieniowe języka wspólnego i aplikacje programu .NET Framework. |
runtime |
Zawiera informacje dotyczące opcji inicjowania środowiska uruchomieniowego. |
Uwagi
Począwszy od .NET Framework 4.6, środowisko uruchomieniowe języka wspólnego domyślnie używa nowego 64-bitowego kompilatora kompilacji just in time (JIT). W niektórych przypadkach może to spowodować różnicę w zachowaniu kodu aplikacji skompilowanego przez poprzednią wersję 64-bitowego kompilatora JIT. Ustawiając enabled
atrybut <useLegacyJit>
elementu na 1
, można wyłączyć nowy 64-bitowy kompilator JIT i zamiast tego skompilować aplikację przy użyciu starszego 64-bitowego kompilatora JIT.
Uwaga
Element <useLegacyJit>
ma wpływ tylko na 64-bitową kompilację JIT. Nie ma to wpływu na kompilację z 32-bitowym kompilatorem JIT.
Zamiast używać ustawienia pliku konfiguracji, możesz włączyć starszy 64-bitowy kompilator JIT na dwa inne sposoby:
Ustawianie zmiennej środowiskowej
Ustaw zmienną
COMPLUS_useLegacyJit
środowiskową na0
(użyj nowego 64-bitowego kompilatora JIT) lub1
(użyj starszego 64-bitowego kompilatora JIT):COMPLUS_useLegacyJit=0|1
Zmienna środowiskowa ma zakres globalny, co oznacza, że ma wpływ na wszystkie aplikacje uruchomione na maszynie. Jeśli jest ustawiona, może zostać zastąpiona przez ustawienie pliku konfiguracji aplikacji. Nazwa zmiennej środowiskowej nie jest uwzględniana wielkości liter.
Dodawanie klucza rejestru
Możesz włączyć starszy 64-bitowy kompilator JIT, dodając
REG_DWORD
wartość doHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
klucza lubHKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework
w rejestrze. Wartość ma nazwęuseLegacyJit
. Jeśli wartość to 0, zostanie użyty nowy kompilator. Jeśli wartość to 1, starszy 64-bitowy kompilator JIT jest włączony. Nazwa wartości rejestru nie jest uwzględniana wielkości liter.Dodanie wartości do
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
klucza wpływa na wszystkie aplikacje uruchomione na maszynie. Dodanie wartości doHKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework
klucza wpływa na wszystkie aplikacje uruchamiane przez bieżącego użytkownika. Jeśli maszyna jest skonfigurowana z wieloma kontami użytkowników, dotyczy to tylko aplikacji uruchamianych przez bieżącego użytkownika, chyba że wartość zostanie dodana do kluczy rejestru dla innych użytkowników.<useLegacyJit>
Dodanie elementu do pliku konfiguracji zastępuje ustawienia rejestru, jeśli są obecne.
Przykład
Poniższy plik konfiguracji wyłącza kompilację z nowym 64-bitowym kompilatorem JIT, a zamiast tego używa starszego 64-bitowego kompilatora JIT.
<?xml version ="1.0"?>
<configuration>
<runtime>
<useLegacyJit enabled="1" />
</runtime>
</configuration>