是什么东西啊?

解决方案 »

  1.   

    加上这个概念之后,执行空间的概念是:进程=》应用程序域=》线程。
    就这个级别,就表示出他们的主次先后等关系。同一个应用程序域之间的线程可以访问整个应用程序域内的对象(当然仍然要受到可见性和同步锁等的限制),而一个应用程序域显然不能直接访问另外一个程序域中的对象。
    应用程序域与进程有点类似,但应用程序域只能出现在托管程序当中,即由.NET程序当中,并不是任何一个Windows程序都可以有应用程序域。另外,在一个进程中,应用程序域可以独立的加载、执行、关闭,就好像一个线程一样。
      

  2.   

    进程和AppDomain的关系:属于一对多的关系,即一个进程中可以有多个AppDomain,但是AppDomain只能存在于某个进程中。缺省情况下,如果你没有自己创建多个AppDomain,一个进程启动后自动创建一个AppDomain。多个AppDomain运行在同一个.NET的进程中,好处就是可以降低系统消耗,而且不同的AppDomain之间互相隔离,具有更好的独立性和安全性。
    线程和AppDomain的关系:在应用程序域和线程之间没有一对一的关联。多个线程可以属于一个应用程序域,尽管给定的线程并不局限于一个应用程序域,但在任何给定时间,线程都在一个应用程序域中执行。线程执行可以涉及多个AppDomain,但某个特定时刻,线程仅存在于一个AppDomain中,且线程可以进入其他的AppDomain。某个程序集的某个实例属于具体的AppDomain,由AppDomain在自己的范围内加载,并按照程序集创建相应的对象。AppDomain是程序集的执行环境,同时程序集作为静态实体,可以被多个AppDomain加载执行
      

  3.   

    http://www.cnblogs.com/mapk/archive/2008/01/26/1041919.html 
      

  4.   

    学习, 不过还没有用过AppDomain