CLR via C# 读书笔记 6-4 监控AppDomain资源使用

本文介绍了如何通过设置AppDomain.MonitoringIsEnabled属性为true来启用AppDomain资源消耗的监控,并详细列举了可用于获取资源使用情况的属性。同时,文章还提到了此功能的一些限制,如监控无法针对特定域进行、开启后无法关闭以及可能带来的性能损耗。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

可以通过将AppDomain.MonitoringIsEnabled 设置为true开启监控域的资源

之后可以通过访问以下属性获取域的资源消耗

  1. MonitoringSurvivedMemorySize

      2. MonitoringSurvivedProcessMemorySize

      3. MonitoringTotalAllocatedMemorySize 

      4. MonitoringTotalProcessorTime

不过这里有些非常恶心的地方

  1. 开启监控是全局的..你不能只能只监控某个域

  2. 开了就关不掉了....如果在将MonitoringIsEnabled 设置为ture以后 再尝试将它设置为false,将抛出一个ArgumentException

  这个设计真是糟糕啊.....一个属性只能给他赋值true....

  3. 开启这个监控会造成性能损失(经过测量  new object 的操作大概需要多消耗50%的cpu时间)

转载于:https://www.cnblogs.com/PurpleTide/archive/2011/01/07/1929566.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值