AppDomains和GC堆

时间:2012-08-31 17:15:20

标签: .net appdomain

是否有单个GC堆进程以这样的方式进行分区,即每个应用程序域都可以访问特定分区?或者每个应用程序域都有单独的GC堆?我确定其他堆如HF堆,LF堆,存根堆,处理表等等......所有这些堆都是为每个应用域分别分配的? GC堆也会单独分配吗?

这可能是正确的,因为除非对象可序列化或实现为MarshalByRef,否则无法在AppDomains之间传递对象。我在想是否有与每个对象关联的AppDomainID和Object Header(Sync Block)存储有关AppDomainID的信息?

1 个答案:

答案 0 :(得分:1)

您有一个进程堆,并且应用程序域共享此堆。

应用程序域保持轻量级进程,作为进程中的隔离单元。