Berlaku Untuk
.NET Framework 4.6.2

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=1COMPLUS_DisableNativeImageLoadList=System.Runtime.Serialization

  • Di registri, membuat salah satu subkunci berikut ini:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFrameworkHKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFrameworkKemudian, tambahkan nilai berikut:

    • Nama kunci: useLegacyJitTipe: REG_WORDNilai: 1

    • Nama kunci: DisableNativeImageLoadListJenis: REG_SZNilai: 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.

Perlu bantuan lainnya?

Ingin opsi lainnya?

Jelajahi manfaat langganan, telusuri kursus pelatihan, pelajari cara mengamankan perangkat Anda, dan banyak lagi.