The information in this article applies to:
SYMPTOMSRunning an application that uses the CSocket class causes a memory leak report to be generated when the application exits. The memory leak report will be similar to this:
CAUSE
The CSocket class will queue up socket notification messages while it waits
for a particular socket operation to complete. These messages are stored in
CPtrList (m_listSocketNotifications) on a per-thread basis. This object is
destroyed when the thread-state information for that thread is cleaned-up.
Unfortunately the thread-state information for the primary thread is not
cleaned-up until after the memory leak detection is performed. RESOLUTIONThis message will only occur when CSocket objects are used in the primary thread. The message can be safely ignored because the m_listSocketNotifications object is actually being safely deleted before the application exits, so the memory will be freed then. STATUSMicrosoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. This problem was fixed in Microsoft Visual C++, 32-bit Edition, version 4.0. Additional query words: 2.10 2.20 3.10 3.20 3.1 3.2
Keywords : kbnokeyword kbMFC kbVC |
Last Reviewed: July 22, 1999 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |