2011-04-18 7 views
4

Est-ce que quelqu'un a une idée, pourquoi la compilation JIT d'une expression LINQ prend plus de temps dans l'enfant AppDomain puis dans l'AppDomain par défaut? Jusqu'à 4 fois plus longtemps.LINQ dans l'enfant AppDomain

+0

Veuillez fournir le code de votre benchmark – abatishchev

Répondre

1

Bien que sans profilage réel, je ne peux pas faire les suppositions suivantes

  1. Il y a une petite quantité de créer une nouvelle tête AppDomain
  2. L'enfant AppDomain devra recharger à nouveau tous les assemblages nécessaires.
  3. Si vous copiez à nouveau l'expression dans le domaine AppDomain parent, le coût de la sérialisation est atteint.
  4. Si vous renvoyez une méthode lambda compilée, le coût de chargement de l'assembly dynamique dans le domaine principal AppDomain est atteint.