fork父行程異常中斷問題 - Linux

Table of Contents

不好意思 想請問一下
假如子行程還在執行 父行程也有用了wait()在等
可是今天如果子行程還沒執行完 父行程就突然異常終止
譬如是 網路斷線 或強制關掉 這樣是不是就沒辦法也把子行程帶走
子行程還會留著 請問這個要怎麼解決 當父程序異常終止的時候 有辦法讓子程序知道嗎
謝謝各位

--

All Comments

Bennie avatarBennie2011-12-25
父行程 catch SIGHUP(terminal), SIGIO(network),然後kill
Emma avatarEmma2011-12-29
子行程,看用約定哪個signal.
Yuri avatarYuri2012-01-02
謝謝樓上 可以再說清楚一點嗎 怎麼catch到呢
Edwina avatarEdwina2012-01-02
說來話長,建議查書籍或相關資料,要視父行程的工作方式決定
Connor avatarConnor2012-01-06
要怎麼做,最簡單情況只要呼叫 signal 這個 system call
Megan avatarMegan2012-01-10
恩 謝謝你 那我想請問一下如果是網路突然斷線
Puput avatarPuput2012-01-15
是算收到sighup 訊號嗎 還是哪一種訊號
Heather avatarHeather2012-01-16
剛試了一下,用shell執行的前景行程A,當shell斷線時,A會收
到 SIGHUP
如果是背景行程,就不會收到 SIGHUP
Zora avatarZora2012-01-18
SIGIO 是網路收發的某方,將socket藉由ioctl設為產生SIGIO
時,當有事件(收到資料,連線被關閉等)時會收到SIGIO,沒做特
Eden avatarEden2012-01-19
別設定,不會收到.如果你的程式沒有做socket通訊,不要管
SIGIO 這個部分