【发布时间】:2011-03-07 19:09:17
【问题描述】:
我用 C# 编写了一个 hello world 程序(没有任何 UI 的 Windows 应用程序)。 release-build 可执行文件只对 Thread.Sleep(50000) //50 秒执行任何操作。 我打开了 sysinternals(类似任务管理器的分析器)。这个可执行程序吃了 7MB 内存(私有字节)!! 任何人都可以解释发生了什么以及如何使内存使用量更小。 附:我还尝试使用 NGEN 预编译 .exe,但内存使用量仍然相同。
非常感谢
【问题讨论】:
-
您选择使用.net,然后抱怨它消耗大量资源!如果您想要轻量级,那么您可以随时尝试类似offerings。
-
@David,我不会说 OP 有“抱怨”,而是他们问了一个如何/为什么要理解的问题。不是每个人都知道一切,毕竟这是一个问答网站=)
-
@David:7MB 对于工作集来说已经不是很大的数量了。 ;>
-
@dthorpe 你应该看看现在 BDS 需要什么! ;-)
-
@David,我不确定从 C# 到 x86 ASM 是不是最好的跳跃。虽然我没有问 OP 存在哪些硬件/平台限制。 :P
标签: c# .net windows memory-management