地址空间不够用,和具体进程没什么关系。 Limit in 64-bit Windows User-mode virtual address space for each 32-bit process 2 GB with IMAGE_FILE_LARGE_ADDRESS_AWARE cleared (default) 4 GB with IMAGE_FILE_LARGE_ADDRESS_AWARE set User-mode virtual address space for each 64-bit process With IMAGE_FILE_LARGE_ADDRESS_AWARE set (default): x64: 8 TB Intel Itanium-based systems: 7 TB 2 GB with IMAGE_FILE_LARGE_ADDRESS_AWARE cleared 看起来是alloc失败时候的处理有bug…… 64位的话倒是可以解决问题。