一个奇怪的内存泄漏问题

发布于 2024-07-14 23:45:34 字数 229 浏览 10 评论 0原文

我使用 ActiveX 控件,它只是一个 HTTP 处理程序。 它发出一个 HTTP 请求,获取响应并向用户触发一个事件。 当用户不请求时,ActiveX 控件几乎处于休眠状态。 它只是等待用户请求发送另一个 HTTP 请求。

只要 OCX 所在的窗口不发生变化(失去焦点、获得焦点等),内存就会保持平静。 对于上述每个操作,我都会丢失大约 400 个字节。

我应该在哪里寻找可能的泄漏?

I use an ActiveX control which is just a HTTP handler. It sends out an HTTP request, gets the response and fires an event to the user. When the user is not requesting the ActiveX control is pretty much dormant. It just waits for a user request to send another HTTP request.

As long as the window in which the OCX resides does not change (losing focus, getting focus, etc) the memory stays calm. For each of the above said operations I lose approx 400 bytes.

Where should I look for a possible leak?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

网白 2024-07-21 23:45:34

假设 HTTP 字符串通过 BSTR 向下传递,您可能会遇到 BSTR 缓存。 要进行验证,您需要将环境变量 OANOCACHE 设置为 1 或直接调用 OaSetNoCache()。 环境变量应该更容易测试。

Assuming that the HTTP string is passed down via BSTRs, you might be running into BSTR caching. To verify, you'll want to set the environment variable OANOCACHE to 1 or call OaSetNoCache() directly. The environment variable should be easier to test with.

枯寂 2024-07-21 23:45:34

寻找可以检测到这种泄漏的现成分析工具(甚至 VC 中的调试模式也可以选择跟踪泄漏的分配)。

Look to off-the-shelf profiling tools that may detect this leak (even debug mode in VC has an option of tracing leaked allocations).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文