CLR via C# 读书笔记 6-4 监控AppDomain资源使用
可以通过将AppDomain.MonitoringIsEnabled 设置为true开启监控域的资源
之后可以通过访问以下属性获取域的资源消耗
1. MonitoringSurvivedMemorySize
2. MonitoringSurvivedProcessMemorySize
3. MonitoringTotalAllocatedMemorySize
4. MonitoringTotalProcessorTime
不过这里有些非常恶心的地方
1. 开启监控是全局的..你不能只能只监控某个域
2. 开了就关不掉了....如果在将MonitoringIsEnabled 设置为ture以后 再尝试将它设置为false,将抛出一个ArgumentException
这个设计真是糟糕啊.....一个属性只能给他赋值true....
3. 开启这个监控会造成性能损失(经过测量 new object 的操作大概需要多消耗50%的cpu时间)