Re: [問題] 用system()呼叫外部程式但需要知道pid?

看板Perl作者 (Just looking.)時間17年前 (2007/10/11 01:04), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
不好意思 再借問一下 目前我把外部程式在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
文章代碼(AID): #173GOftg (Perl)
文章代碼(AID): #173GOftg (Perl)