[問題] 關於daemon cpu usage

看板LinuxDev作者 (JmyWbs)時間15年前 (2010/10/31 12:45), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
各位好 目前正學習於 fedora 13 下寫一daemon, 此daemon的目的是判斷:當設定時間等於目前時間,則開啟一個程式(執行檔 AAA )。 狀況是: 1.由系統監控發現 AAA 所佔的CPU 是90%~100%,狀態是執行中,等待頻道 0。 AAA 功能正常。 2.若不close STDOUT_FILENO, 則 AAA 所佔的CPU 是 0%,狀態是睡眠中,等待頻道 poll_schedule_timeout, 但 AAA 會當掉。 3.若直接執行 AAA (不經由 daemon 開啟),AAA 所佔的 CPU 及功能皆正常。 想請問 是否與 AAA 有關? 原因? 及指引小弟解決方案,謝謝。 ============================================================================= code 如下: pid_t pid, sid; pid = fork(); if ( pid < 0 ) { exit(EXIT_FAILURE); } if ( pid > 0 ) { exit(EXIT_SUCCESS); } umask( 0 ); sid = setsid(); if ( sid < 0 ) { exit(EXIT_FAILURE); } if ((chdir("/")) < 0) { exit(EXIT_FAILURE); } close ( STDIN_FILENO ); close ( STDOUT_FILENO ); close ( STDERR_FILENO ); while( 1 ) { if(目前的時間==指定的時間) system("執行檔的絕對路徑"); sleep(60); } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.168.110.49
文章代碼(AID): #1CpFHc2T (LinuxDev)
文章代碼(AID): #1CpFHc2T (LinuxDev)