我在传统ASP中遇到 Out of Memory 错误,可能是尝试访问数据的地方。例如:
Microsoft VBScript compilation error '800a03e9'
Out of memory
(some file) Line 0
这些错误只会偶尔发生一次,它们会持续发生几分钟,然后网络服务器必须重新启动应用程序池,因为所有会话都会丢失。
在经典ASP应用程序中查找/诊断内存泄漏的好工具是什么,这种应用程序大量使用ADO进行数据访问以及其他几个现成的COM对象。
据推测,任何内存泄漏都来自COM对象而不是脚本,因此一般的Windows调试器或泄漏查找器可能就是我所需要的。关于什么是合适的建议?
或者有什么可能导致这些错误的其他想法?
答案 0 :(得分:1)
不幸的是,追踪内存泄漏并非易事: - (
以下是需要注意的事项的完美摘要:
http://www.leinadium.com/code/classic-asp-memory-leaks-in-iis/
请务必阅读该帖子中的链接以及工具列表。
祝你好运!答案 1 :(得分:1)
Microsoft有一个很好的实用程序umdh.exe,可能有助于在这种情况下发现泄漏。它允许您在一个点上拍摄“快照”,运行应用程序(例如,IIS),然后拍摄另一个快照并比较内存使用差异。
答案 2 :(得分:0)
如果
您尝试使用EOF OR BOF获取一行数据
或
数据库连接是关闭的,或者你试图用尽了!
你应该得到错误。