栈溢出问题 free

wzw88486969 2013-07-21 06:38:40

struct ListUnit
{
char *p;
ListUnit *next;
}
struct ListHead
{
num;
ListUnit *next;
};
void *m_malloc(ListHead* head,int size)
{
for(int i=0;i<size;i++);
next=malloc(); //malloc 大小是1024.....1024*1024
}
void *m_free(void *p)
{
}
threadn()
{
1> ListHead *p=malloc(sizeof(ListHead)); //2>ListHead p 用这种方法,m_free函数做相应修改
m_malloc(p,size) //size=1.....30
..........
m_free(p);
}
int main()
{
thread1,2,3,4,5,6,7 //7 thread
scanf();
}
用方法一:
内存泄露,m_free链表中的元素时,总出各种内存free问题
用方法二:
内存不泄露,m_free链表中的元素时,不出内存free问题
我的程序里静态编译的,用的都是*.a库

我想到了,栈溢出问题 free
------------------
kernel space
------------------
stack 向下
------------------
map *.so
------------------
heap 向上
------------------
bss
------------------
data
------------------
text
------------------

有经验的朋友帮助分析下,谢谢!!!
...全文
151 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

427

社区成员

发帖
与我相关
我的任务
社区描述
非技术问题的乐园
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧