Coderik
@Coderik

LINQ в новом домене приложения (AppDomain)

Есть ли у кого-нибудь какие-либо идеи, почему JIT компиляция одного и того же LINQ запроса занимает в 4 раза больше времени в новом домене (child AppDomain), чем в основном (default AppDomain)?
  • Вопрос задан
  • 2524 просмотра
Пригласить эксперта
Ответы на вопрос 1
Ernado
@Ernado
Архитектор программного обеспечения
Не могли бы вы прислать пример своего кода?

Я провел вот такой эксперимент(вот тут просто код).

Два раза запускал программу. Один раз вызывал цикл с созданием инстанса класса обычным способом.
Второй раз — загружая из внешней сборки и запуская в новом домене.

Результаты следующие:
Hamster: 50000
Domain hamster: 00:00:00, Hamster: 00:00:23.5093447

Domain hamster: 50000
Domain hamster: 00:00:26.9815433, Hamster: 00:00:00.0010000

То есть 00:00:23.5093447 и 00:00:26.9815433. Для цикла в 50000 повторений разница примерно в 3 секунды. Разница конечно есть, но не в 4 раза, да и при таком количестве повторений скорее всего цифры отличались бы гораздо сильнее?

Возможно у вас более сложный linq запрос? Уж очень интересно разобраться стало.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы