当前位置:  技术问答>linux和unix

传说很难的一个问题--全局变量问题

    来源: 互联网  发布时间:2017-01-04

    本文导语:  关于全局链表问题,把链表的起始地址放在全局变量里。父子进程通过这个全局变量来对这个链表进行读、增、删的操作。 流程大致如下: 在父进程里每收到一个客户端发来的数据包,边fork一个子进程。进行相关...

关于全局链表问题,把链表的起始地址放在全局变量里。父子进程通过这个全局变量来对这个链表进行读、增、删的操作。
流程大致如下:

在父进程里每收到一个客户端发来的数据包,边fork一个子进程。进行相关的操作以后,向链表中插入一个节点,然后退出子进程。父进程定时的去读取这个链表。现在问题就来了,在子进程中malloc一个节点并添加到链表中以后,子进程就退出了,刚才插入的那个节点的空间也被free了。所以父进程肯定也读不到链表的内容了。


请问遇到这种情况该怎么办啊?有没有好的解决办法?

|
共享内存

|
奇怪了,你子进程中malloc了,在退出前有free吗,如果有,为什么要这样设计呢

|
子进程是父进程的副本,不是共享,描述符可以保持打开,不意味着任何数据都是共享,用内存共享吧。

|
楼主自己搜搜共享内存,例子一把一把的。
http://blog.csdn.net/qiuxin315/article/details/6722307
看看这个,或许对你有帮助

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 传说中的vmtools是从哪里安装的?
  • 谁能解释一下下面的命令,谢谢!这个是不是传说中的火星文啊?
  • linux难题,你会吗?传说解决此题,世界上只有少数人哦,来者有分


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3