摘要: 上周,项目里需要一个视频转发工具,我用libvlc完成了一个,大致流程如下:(1)主进程监听指定端口,接收转发请求;(2)验证请求合法性后,主进程fork一个子进程,在子进程中启动vlc进行转发。但调试时发现了一个小问题:fork出子进程后,在父进程中没有调用waitpid,在子进程退出后, 父进程没有为它“收尸”。于是乎,子进程虽然退出了,但进程号在系统历仍然存在,变成了臭名昭著的“僵尸进程”。问题的根源在于:父进程没有调用waitpid来监测子进程的活动状况,关于waitpid能干什么,请搜索之。。。但是:父进程是单线程(称为监听线程),主要干一件事,那就是调用socket的recvfro 阅读全文
posted @ 2012-01-13 17:27 楚 阅读(625) 评论(0) 推荐(0) 编辑