JSON序列化中的内存泄漏

时间:2014-01-07 04:18:14

标签: c# json serialization memory-leaks libraries

我已经创建了一个C#应用程序,并且我使用了JSON序列化。目前该应用程序正在消耗过多的工作集内存。可能是因为我使用过NewtonSoft JSON库吗?我也使用过BouncyCastle库。它还会造成内存泄漏吗?请指教。

2 个答案:

答案 0 :(得分:1)

您是否尝试过DataContractJsonSerializerJavaScriptSerializer而不是JSON.net?它们是在C#中内置的,并且可能比外部库造成更少的问题。

详细说明: DataContractJsonSerializer

JavaScriptSerializer

答案 1 :(得分:0)

我建议你试试Ants Memory Profiler。内存管理通常很难找到内存使用情况。

但是根据我的经验,Newtonsoft.Json对于潜在的内存泄漏并没有多大帮助。

我自己没有使用过BouncyCastle,所以我不能告诉你它对内存的效果如何。鉴于加密的性质,我希望有一些部分是非托管/本机的。确保在所有代码路径上都设置了所有IDisposable(我建议使用using,以确保即使在特殊情况下也会发生这种情况)。

但是,一般来说,在使用良好的社区创建库之前,我会指出我自己的代码。