内存中的集合大小与磁盘上集合的大小

时间:2013-07-30 01:33:58

标签: c# winforms memory-management collections

我有一个集合,其中每个项目包含以下内容:

ConcurrentDictionary<string, string> m_Dict1;    
ConcurrentDictionary<string, string> m_Dict2; 
ConcurrentDictionary<string, string> m_Dict3;  
string m_filePath;
string m_extension;
string m_directoryFullPath;
string m_fileName;
string m_directory;

当我将集合保存为二进制文件时,文件大小约为62meg。

当我启动程序很少时,除了从二进制文件恢复集合外,我在任务管理器中的应用程序进程显示我的应用程序正在使用大约312meg。

这是否表明我有意想不到的事情发生?

保存的二进制文件的大小是否应该类似于内存中集合中保存的相同数据的大小?或者期望两者的大小应该相似是错误的吗?

1 个答案:

答案 0 :(得分:2)

将加载二进制文件的代码移动到新函数中。 从app main()调用这个新函数。 之后,始终从main()调用GC.Collect()并再次检查