Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.

Симптомы

Предположим, что после обновления до Microsoft платформа.NET Framework 4.6 на вашем компьютере. При использовании приложения, использующего Windows Communication Framework (WCF) для отправки сообщений XML SOAP кодировки может занять немного больше времени. В некоторых случаях это может повлиять на скорость, с которой приложение-сервер может обрабатывать запросы.

Причина

Эта проблема возникает из-за новый компилятор JIT – (JIT) с именем RyuJIT. Этот компилятор использует разные оптимизации чем прежних версий компилятора JIT64. Метод горячей код пути для кодирования строк в XmlDictionaryWriter не оптимизирован для нового JIT-компилятором и созданные собственные команды работают медленнее и кодировку занимает больше времени. Когда сообщение SOAP содержит большое количество строк для кодирования, этот код медленнее, более часто используется и может повлиять на время кодирования.

Решение

Чтобы обойти эту проблему, настройте приложение Запрет использования ngen сборки System.Runtime.Serialization.dll и устаревший модуль JIT. Для этого воспользуйтесь одним из следующих способов:

  • Задайте следующие переменные среды:

    COMPLUS_useLegacyJit=1
    COMPLUS_DisableNativeImageLoadList=System.Runtime.Serialization

  • В реестре создайте один из следующих подразделов:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework
    HKEY_CURRENT_USER\SOFTWARE\Microsoft\.NETFramework

    Затем добавьте следующие значения:

    • Имя ключа: useLegacyJit
      Тип: REG_WORD
      Значение: 1

    • Имя ключа: DisableNativeImageLoadList
      Тип: REG_SZ
      Значение: System.Runtime.Serialization

  • Добавьте следующий текст в < приложение >. exe.config файла. Создайте указанным разделам, если они еще не существуют.<configuration> <runtime>
    <useLegacyJit enabled="1">
    <disableNativeImageLoad>
    <assemblyIdentity name="System.Runtime.Serialization" />
    </disableNativeImageLoad>
    </runtime>
    </configuration>



Дополнительные сведения об известных проблемах в 4.6 платформа.NET Framework содержатся в разделе Известные проблемы 4.6 платформа.NET Framework.

Дополнительные сведения

Дополнительные сведения об изменениях версий продуктов и их влияние в 4.6 платформа.NET Framework Совместимости приложений в 4.6 платформа.NET Frameworkсм.

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×