即使有足够数量的可用字节,Malloc 也无法分配字节
Malloc failed to allocate bytes even there is sufficient amount of bytes available
我尝试使用内部调用 malloc 的包装函数分配 21,128 个字节。
Malloc 统计信息() :-
system bytes = 14618624
in use bytes = 13759424
Arena 1:
Arena 0:
system bytes = 14626816
in use bytes = 13759600
Arena 1:
system bytes = 135168
in use bytes = 3280
Arena 2:
system bytes = 135168
in use bytes = 13088
但是,我仍然看到 malloc 失败了。可能是什么原因?
*** Error in `./wr_acc': malloc(): memory corruption: 0x00007ff4747a2ff0 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x82c86)[0x7ff48c9d5c86]
/lib64/libc.so.6(__libc_malloc+0x4c)[0x7ff48c9d884c]
./wr_acc[0xdf4c28]
请帮忙。我是初学者。
错误信息很清楚:
*** Error in `./wr_acc': malloc(): memory corruption: 0x00007ff4747a2ff0 ***
malloc()
在其辅助结构中检测到无效状态,因此它放弃尝试分配内存并中止程序以避免潜在的破坏性副作用。
用于跟踪已分配块和空闲块的私有数据 malloc()
可能已被您的程序覆盖,例如写入超出已分配块末尾或在其开始之前。您可以 post 代码,看看是否有人能发现此类问题。
我尝试使用内部调用 malloc 的包装函数分配 21,128 个字节。
Malloc 统计信息() :-
system bytes = 14618624
in use bytes = 13759424
Arena 1:
Arena 0:
system bytes = 14626816
in use bytes = 13759600
Arena 1:
system bytes = 135168
in use bytes = 3280
Arena 2:
system bytes = 135168
in use bytes = 13088
但是,我仍然看到 malloc 失败了。可能是什么原因?
*** Error in `./wr_acc': malloc(): memory corruption: 0x00007ff4747a2ff0 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x82c86)[0x7ff48c9d5c86]
/lib64/libc.so.6(__libc_malloc+0x4c)[0x7ff48c9d884c]
./wr_acc[0xdf4c28]
请帮忙。我是初学者。
错误信息很清楚:
*** Error in `./wr_acc': malloc(): memory corruption: 0x00007ff4747a2ff0 ***
malloc()
在其辅助结构中检测到无效状态,因此它放弃尝试分配内存并中止程序以避免潜在的破坏性副作用。
用于跟踪已分配块和空闲块的私有数据 malloc()
可能已被您的程序覆盖,例如写入超出已分配块末尾或在其开始之前。您可以 post 代码,看看是否有人能发现此类问题。