i know nothing about the quality of windows malloc on multi-cpu boxes.
As of VC++ 6.0 SP4:
There is a small block freelist for blocks 0x3F8 or smaller. It uses a critical section around the allocator. Anything larger falls through to the HeapAlloc Win32 API function. The allocator uses HeapAlloc and VirtualAlloc to get its own blocks. These use a private heap created for the CRT. According to the help, these functions are serialized to prevent access by multiple threads to the same heap.
-- Greg Marr [EMAIL PROTECTED] "We thought you were dead." "I was, but I'm better now." - Sheridan, "The Summoning"
