【发布时间】:2010-10-19 20:19:55
【问题描述】:
我有一个在 C# 中使用线程的程序。有没有办法以编程方式了解应用程序的内存使用情况?我想将线程的生成限制为 10 兆字节的内存,我该怎么做?
【问题讨论】:
-
你开始控制记忆的那一刻就是你开始犯错的那一刻。如果您对内存有要求,请不要使用 .NET。如果您没有要求,请停止担心内存。 .NET 比以往任何时候都更好地管理内存。停下来。不要管它。不错。停止。
-
我同意威尔的观点。只要您当前引用的对象在 32 位系统上低于 2 GB 内存,就让 GC 处理它。
-
@Will:为什么这么糟糕?如果不是 .NET,那么还会使用什么?
-
@yoitsfrancis:OTH 你有一个服务应用程序,你想防止成为内存占用者,那么你需要说明,我不认为这样的要求是不合理的,它不是工作GC 来限制对内存的需求。
-
我认为他并没有试图管理他的内存以使每个线程 10Mb 或更少。我认为他正在尝试管理衍生线程的数量,以使他的进程不超过 10Mb,我认为这是一个公平的要求。由他来决定他的申请是否需要这样做。
标签: c# .net multithreading memory