4

Google 无法告诉我 SQL CLR 中是否有可用的 API 来获取内存压力通知。

它显然是使用的,因为 AppDomain 将在内存压力下被卸载,但问题是通知是否在卸载之前发送到 AppDomain,以便我可以释放一些缓存内存。

(我的 dll 已经在不安全模式下运行,所以这不是问题)

4

1 回答 1

1

在 SQL 2012 中,他们实现了一个新查询,允许您获取当前内存使用情况......

select survived_memory_kb from sys.dm_clr_appdomains where db_id = DB_ID()

它不会给你内存压力,但它确实允许你监控内存的使用情况,从而根据你自己的逻辑进行调整。

于 2014-08-15T10:30:15.573 回答