程序結束處理函式

2021-06-19 20:01:11 字數 451 閱讀 7704

程序結束的方式有:

1. 程序正常結束;

2. 程序非正常結束。

如果是正常結束,可以通過atexit函式來註冊callback函式,

這樣程序正常結束時就會呼叫這個註冊的函式。

#include

int atexit(void (*function)(void));

如果程序非正常結束,那麼只要父程序使用sigaction函式去監控了sigchld訊號,

那麼當子程序意外結束時系統就會callback sigchld訊號處理函式。

雖然子程序可能會有多個,但是callback中有乙個siginfo_t*型別的指標引數,

可以通過這個引數來辨別是哪個子程序死亡了。

1. 如果程序正常結束,會不會送sigchld訊號給父程序?

可以做個實驗看看結果。

2. 有沒有什麼應用需要去監控子程序是否結束?

結束EXCEL程序

在c 中操縱excel或者word之類的東西,應該很多人都做過,不過在呼叫完之後,我們好象都有一些頭痛的事情,那就是結束這些程序.很多書都沒有說,很多論壇上也沒有.我在上乙個專案中也遇到過這樣的問題,但是後來做了一些嘗試,發現真的有解決方案的.解決方案有兩種 一,就是建立的excel或者word是可...

結束其它程序

第一步 findwindow 類名 視窗標題 返回值視窗控制代碼 列子 hwnd hwnd findwindow txguifoundation qq2011 注意的是兩個引數可以只寫乙個,另乙個為null。第二步 getwindowthreadprocessid 視窗控制代碼,程序id 例子 dw...

VC 結束程序

1.使用exitprocess 結束程序 程序只是提供了一段位址空間和核心物件,其執行時通過在其位址空間內的主線程來體現的。當主線程的進入點函式返回時,程序也就隨之結束。這種程序的終止方式是程序的正常退出,程序中的所有執行緒資源都能夠得到正確的清除。除了這種程序的正常退出方式外,有時還需要在程式中通...