int daemon()
{
if (daemon(1, 1) < 0) /* Keep the same working directory and pipes */
{
makeTimer("First Timer", &firstTimerID, 2, 2); //2ms
makeTimer("Second Timer", &secondTimerID, 10, 10); //10ms
makeTimer("Third Timer", &thirdTimerID, 100, 100); //100ms
return 1;
}
}
int main()
{
daemon();
}
return 0;
}
我創建了一個計時器,計時器每2ms,10ms和100ms調用任務。我想在後臺運行計時器,它永遠不會死。任何人都可以給我一些在C程序中運行Linux操作系統後臺任務的想法。 我想使這三個電話在回地面運行:c程序作爲背景運行進程,永不死亡?
makeTimer("First Timer", &firstTimerID, 2, 2); //2ms
makeTimer("Second Timer", &secondTimerID, 10, 10); //10ms
makeTimer("Third Timer", &thirdTimerID, 100, 100); //100ms
非常感謝。我編輯了我的代碼,並希望在後臺運行三個函數調用。那麼你能告訴我怎麼做? – user3340661
在你的程序開始時,大概你的'main()'只是調用'daemon()'函數。如果您需要更多信息,請閱讀手冊頁。該函數負責調用'fork()'併爲您更改I/O管道,並將您從父進程中分離出來。 –
我說的是實話,必須在明天之前提交我的項目。所以你可以幫我嗎?否則他們會讓我失望。 – user3340661