linux輸出函式問題,linux 輸出函式問題

2022-12-04 03:16:19 字數 1134 閱讀 5355

1樓:匿名使用者

測試了一下,三個程序都會收到sigint訊號。

原程式中,child1, child2都收到sigint訊號,呼叫stop(), 之後被喚醒,列印"child process ... is killed by parent!",事實上kill這兩個child的不是parent,是它們自己的sigint。

放到①處,child1收到sigint訊號,預設的行為是把自己殺了,當然也來不及列印任何東西了。child2收到sigint訊號,打斷waiting(),列印"child process 2 ...",然後退出。

殺死它的也不是sigusr2訊號。

放到②處,child1, child2收到sigint訊號,預設的行為是立即把自己殺了,也來不及列印任何東西了。

測試方法:

// 列印誰執行、被什麼訊號打斷

static void stop(int signal)

// 在parent程序中,列印各程序id

printf("parent %d, child1 %d, child2 %d\n",getpid(),p1,p2);

如果讓parent成為殺死child的**,可以在child1,child2中加入:

signal(sigint, keep_me_alive);

// 不理睬sigint訊號

static void keep_me_alive(int signal)

這時列印結果就一樣了

請參考,希望能幫到你。

2樓:

試試下面這些語句:

#include

int main()

程式會把本應輸出到螢幕的

hello world!

輸出到檔案out.txt中。

不知道樓主說的偽終端是不是這個意思。

祝你好運!

3樓:匿名使用者

printf根據開啟檔案的檔案指標不同可以輸出到不同的終端檔案指標為stdout 對應到標準輸出

檔案指標為stderr 對應到錯誤輸出

也可以開啟/dev/ttyn指定的終端,開啟/dev/ptyn指定的偽終端

甚至可以可以指定/dev/null,/dev/zero,不進行輸出

linu怎麼獲取root許可權,linux怎麼獲取root許可權

1 獲取root許可權linux系統都是一樣的,這裡以ubuntu為例,用組合鍵ctrl alt t開啟乙個新的終端程式 2 輸入 版sudo passwd root 設定root密碼 權首先輸入使用者登陸密碼,然後設定新的root密碼 3 輸入su按enter鍵,輸入前面設定好的root密碼,獲取...

linu怎麼設定,linux 怎麼設定IP

linux的ip設定可以到檔案裡設定也可以使用命令設定1 檔案設定,cd etc sysconfig network scripts 之後編輯網絡卡檔案就行。vi ifcfg ethn n就是第幾塊網絡卡,可以用ifconfig檢視你有幾塊網絡卡,以及網絡卡名。2 使用命令 ifconfig eth...

linu如何重啟,linux 如何重啟apache

樓上的都可以,不過我個人用 httpd k restart 關鍵是找到httpd這個檔案。root test bin httpd restart bash httpd command not found 明顯是bash在path所指的目錄下找不到httpd,試試找到它,然後用絕對路徑。比如我們這裡是...