Gejala
Mengasumsikan bahwa Anda telah meng-upgrade ke Microsoft .NET Framework 4.6 di komputer Anda. Ketika Anda menggunakan aplikasi yang menggunakan Framework komunikasi Windows (WCF) untuk mengirim pesan XML SOAP, penyandian memerlukan sedikit lebih lama. Dalam beberapa kasus, hal ini dapat mempengaruhi tingkat di mana aplikasi server dapat memproses permintaan.
Penyebab
Masalah ini terjadi karena compiler Just-In-Time (JIT) baru yang bernama RyuJIT. Kompiler ini menggunakan optimalisasi berbeda daripada compiler JIT64 warisan. Metode di jalur cepat kode untuk pengkodean string dalam XmlDictionaryWriter tidak dioptimalkan untuk compiler JIT baru dan petunjuk asli dihasilkan berjalan lebih lambat dan penyandian memerlukan waktu lebih lama. Saat pesan SOAP berisi sejumlah besar string dikodekan, kode ini lebih lambat lebih sering digunakan dan dapat mempengaruhi pengkodean waktu.
Pemecahan masalah
Untuk mengatasi masalah ini, konfigurasikan aplikasi untuk menonaktifkan penggunaan ngen untuk rakitan System.Runtime.Serialization.dll dan menggunakan mesin JIT legasi. Untuk melakukannya, gunakan salah satu dari metode berikut ini:
-
Menetapkan variabel lingkungan berikut ini:
COMPLUS_useLegacyJit=1
COMPLUS_DisableNativeImageLoadList=System.Runtime.Serialization -
Di registri, membuat salah satu subkunci berikut ini:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework
Kemudian, tambahkan nilai berikut:-
Nama kunci: useLegacyJit
Tipe: REG_WORD
Nilai: 1 -
Nama kunci: DisableNativeImageLoadList
Jenis: REG_SZ
Nilai: System.Runtime.Serialization
-
-
Menambahkan teks berikut ke < aplikasi >. exe.config file. Membuat bagian ditunjukkan jika mereka belum ada.<configuration> <runtime>
<useLegacyJit enabled="1">
<disableNativeImageLoad>
<assemblyIdentity name="System.Runtime.Serialization" />
</disableNativeImageLoad>
</runtime>
</configuration>
Untuk informasi selengkapnya tentang masalah yang diketahui dalam .NET Framework 4.6, lihat masalah untuk .NET Framework 4.6 yang diketahui.
Informasi lebih lanjut
Untuk informasi lebih lanjut tentang perubahan versi produk dan efeknya dalam .NET Framework 4.6, lihat Kompatibilitas aplikasi .NET Framework 4.6.