问题:在用户调用一个页面后,通过fork两次的技术,父进程立即返回,孙子进程继续在后台处理。
但是却页面一直不能立即返回,要等到孙子进程结束才返回。
解决:孙子进程关闭标准输入.标准输出和标准出错,则达到效果,页面立即返回,孙子进程在后台执行。
原因:perl写的CGI程序的标准输入.标准输出和标准出错为与浏览器相连的socket。
孙子进程继承了标准输入.标准输出和标准出错,孙子进程一直和浏览器的socket相连,当然不能返回。
close STDIN;
close STDOUT;
close STDERR;
|
阅读(2019) | 评论(0) | 转发(0) |