IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Framework .NET Discussion :

Définition simple AppDomain


Sujet :

Framework .NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 47
    Par défaut Définition simple AppDomain
    Bonjour à tous,

    Je n'ai pas réussi à trouver une définition simple de AppDomain

    Est ce que vous pouvez m'aider s'il vous plait

    Je vous remercie d'avance

  2. #2
    Rédacteur
    Avatar de The_badger_man
    Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2005
    Messages
    2 745
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 745
    Par défaut
    Un domaine d'application est un container permettant à plusieurs assemblies de s'exécuter au sein d'un unique processus mais avec des espaces mémoires distincts (comme si elle étaient lancées dans des processus différents).

    Les domaines d'application sont gérés par la CLR alors que les processus sont gérés par l'OS.

    Un exemple est ASP.NET qui crée un domaine d'application par utilisateur d'un site web.


    On utilise des domaines d'application pour isoler des taches qui pourraient faire "planter" un processus. S'il y a un problème dans le domaine d'application on peut le décharger sans affecter le processus.

    Autre exemple. Si une assembly est chargée dans le domaine d'application par défaut (celui que tu utilises sans t'en rendre compte) et bien elle ne pourra pas être déchargée tant que le processus est lancé. Alors que si tu charge ton assembly dans un AppDomain différent, elle sera déchargé quand l'appDomain (celui où elle se trouve) le sera. Cela permet de charger des grosses assemblies temporairement puis de les décharger quand on en a plus besoin.


    De plus il y a toute une partie sécurité. Plusieurs AppDomain au sein d'un processus ont leur contexte de sécurité propre. Tu peux donc accorder des droits limités à un appDomain afin qu'il charge une assembly dont tu n'as pas totalement confiance. Le reste de ton application continuera à avoir tous les droits (enfin, ça depend du paramètrage aussi...). C'est comme cela que fonctionnent les applications pouvant charger des addins. Les addins sont des dll qui sont chargée dans le processus de l'application mais dans un appDomaine différent avec des droits limités.



    T'as un tuto là: http://vincentlaine.developpez.com/t...domain/csharp/
    Les règles du forum
    Le trio magique : FAQ + Cours + fonction rechercher
    Mes articles
    Pas de questions par messages privés svp

    Software is never finished, only abandoned.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 47
    Par défaut
    Bonjour

    merci beaucoup pour ta réponse

    j'ai tout compris

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/10/2013, 16h10
  2. Je cherche une simple définition technique pour ces termes
    Par VB 2008 dans le forum Forum général ERP
    Réponses: 3
    Dernier message: 07/06/2012, 14h28
  3. Définition de "Métalangage"
    Par No dans le forum Langages de programmation
    Réponses: 5
    Dernier message: 19/07/2002, 14h05
  4. recherche exemple simple pour corba en c++
    Par Pinggui dans le forum CORBA
    Réponses: 4
    Dernier message: 06/05/2002, 11h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo