ACE_Malloc分配的大小有限制?
typedef ACE_Malloc<ACE_MMAP_MEMORY_POOL,ACE_Null_Mutex> ALLOCATOR;ALLOCATOR*g_allocator;
g_allocator=new ALLOCATOR("config.stroge");
void*p=g_allocator->malloc(1024*1024); //程序崩溃...
测试了一下,只能分配400++K的内存,请问这是限制的问题,还是通过那个参数?接口?可以进行修改设置... 有一個解決方式可以這麼做:
由於你是使用ACE_MMAP_Memory_Pool, 故請在ACE_MMAP_Memory_Pool_Options設置參數minimum_bytes為一個許可的最大值, 目前這種方式測試是可以解決的.
ACE_Malloc (const ACE_TCHAR *pool_name,
const ACE_TCHAR *lock_name,
const ACE_MEM_POOL_OPTIONS *options = 0);
ACE_MMAP_Memory_Pool_Options為options參數
页:
[1]