Windows API has a set of function for heap creation and handling: HeapCreate, HeapAlloc, HeapDestroy and etc. I wonder what is the use for another heap in a program? From fragmentation point of view, you will get external fragmentation where memory is not reused among heaps. So even if low-fragmentation heaps are used, stil there is a fragmentation. Memory management of additional heaps seems to be low-level. So they are not easy to use. In addition, additional heap can probably be emulated using allocations from heap and managing allocated memory.
So what is the usage? Did you use it?