FIX: Memory Leak Using UDP Socket Under Windows CE 2.0 (183364)
The information in this article applies to:
- Microsoft Windows CE Operating System, Versions 2.0
This article was previously published under Q183364 SYMPTOMS
Under Windows CE, a memory leak exists when you use a UDP (datagram)
socket. The leak occurs when you call either the send() or sendto() API on
either a connected or unconnected socket, respectively. A call causes a
small leak in the kernel. Eventually, the handheld PC runs low on memory,
which triggers message boxes detailing the error. As a result, other
applications might terminate due to insufficient memory.
CAUSE
A kernel critical section object in the route cache of the IP layer. Calls
to send/sendto on UDP sockets cause a leak per call.
RESOLUTION
There are no hot fixes available. The only viable solution is to avoid
using datagram sockets and use stream sockets instead.
STATUS
Microsoft has confirmed this to be a problem in the Microsoft products
listed at the beginning of this article. This problem was corrected Windows
CE, version 2.1.
Modification Type: | Minor | Last Reviewed: | 7/22/2003 |
---|
Keywords: | kbAPI kbBug kbfix kbIP kbnetwork kbOSWinCE210fix kbWinsock KB183364 |
---|
|