作者ArchRanger (Just looking.)
看板perl
标题Re: [问题] 用system()呼叫外部程式但需要知道pid?
时间Thu Oct 11 01:04:40 2007
不好意思 再借问一下
目前我把外部程式在sub里面执行
然後用fork开child出来 在child里面呼叫这个sub
使用if区隔child和parent的程式码
因为这个外部程式是持续进行的 而我需要送一个signal来让它终止
这时候我就把送signal的部份写在parent的区段内
可是当我执行起来 送signal的时候它仍旧不理我@@
请问我是不是遗漏了什麽?
贴上相关程式码:
56 if (!defined (my $kidpid = fork())) {
57
58 die "Cannot fork the process: $!";
59 } elsif ($kidpid == 0) {
60
61 $dump_pid = &calldump ($bssid,$channel);
62 print "Dumping process starts at $dump_pid\n";
63 } else {
64
65 if ($resp =~ /STOP/) {
66
67 kill -9 => $dump_pid;
68 print "Dumping Terminated.\n";
69 }
70 waitpid ($kidpid, 0);
71
72 }
抱歉 完全是fork和处理process这方面的新手 没有做过这些处理
一直都是乱翻书和用perldoc慢慢拼凑
所以请各位多多指教^^a
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.168.160.160