【发布时间】:2012-04-17 15:38:27
【问题描述】:
我正在用 .NET 4.0 C# 编写应用程序。我将对象放在 .net httpruntime 缓存中,并希望在其上生成一些统计信息。我想知道对象放入缓存之前的大小以及缓存中的大小。我该如何衡量这个?放入缓存时是否序列化,如果是,使用什么类型的序列化?
【问题讨论】:
标签: c# asp.net caching .net-4.0
我正在用 .NET 4.0 C# 编写应用程序。我将对象放在 .net httpruntime 缓存中,并希望在其上生成一些统计信息。我想知道对象放入缓存之前的大小以及缓存中的大小。我该如何衡量这个?放入缓存时是否序列化,如果是,使用什么类型的序列化?
【问题讨论】:
标签: c# asp.net caching .net-4.0
HTTP 运行时缓存根本不序列化数据,它只是将其放在哈希表中:
What is the default serialization used by the ASP.net HttpRuntime.Cache
有几种方法可以获取或估计内存中 .NET 对象的大小:
How to get object size in memory?
https://stackoverflow.com/a/1128674/141172
不可能直接知道 .NET 对象消耗的字节数:
http://blogs.msdn.com/b/cbrumme/archive/2003/04/15/51326.aspx
【讨论】: