在一个复杂的多线程应用程序中,我每周可能会遇到一次内存不足异常。该应用程序通过多个套接字发送/读取大量数据,其中读取的数据被缓存以避免网络卡缓冲区溢出。
分析内存异常的最佳策略是什么?在正常运行时,进程资源管理器中显示的应用程序大小为“所有堆中的总字节数”高达1.5 GB。
有没有一种策略可以使用一个线程每秒轮询下面两个选项之一来了解何时开始分析问题:
分析内存异常的最佳策略是什么?在正常运行时,进程资源管理器中显示的应用程序大小为“所有堆中的总字节数”高达1.5 GB。
有没有一种策略可以使用一个线程每秒轮询下面两个选项之一来了解何时开始分析问题:
GC.GetTotalMemory()
或者
我还没有研究商业分析工具,我有些担心它们会对性能产生影响,并可能导致错误结果的分析。PrivateMemorySize64()