Re: [問題] 用system()呼叫外部程式但需要知道pid?
不好意思 再借問一下
目前我把外部程式在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
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
Perl 近期熱門文章
PTT數位生活區 即時熱門文章