日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > 互聯網 > Linux daemon進程原理與使用

Linux daemon進程原理與使用

來源:程序員人生   發布時間:2015-05-12 09:00:26 閱讀次數:3200次

甚么情況下用daemon進程

生產環境下,除我們ssh登錄上去,然后手動跑的那部份之外,其他都是自動運行的,這些大部份都應當是后臺履行的。如何才能后臺履行呢?

  1. nohup ./XXX &
  2. 由系統的其他daemon進程啟動。這樣的話,你的程序是它的子進程,跟終端沒關系。退出終端也不會致使進程退出。如寫在crontab里。
  3. 寫成daemon程序,可以手動履行,退出終端時程序不退出。

如何選擇呢?
(1)首先,清算過期日志這1類需求,可以寫1個死循環1直運行,也能夠寫在crontab里,每次履行完就退出(如果每分鐘1次可以滿足的話);
(2)crontab的需要接受最多1分鐘的時延,如果實時性要求更高1些,那末就需要斟酌寫個死循環了,這個程序可以由crontab來start和restart,只有在掛了重啟時才會出現1分鐘時延;
(3)服務不能中斷的(nginx、redis、apache,所有在線服務),1般都是daemon程序。但理論上用(2)仿佛也能夠;固然這二者細節上有很多區分。

怎樣用daemon進程

linux C/C++可以直接調用int daemon(int, int)函數,不需要自己重新實現。
示例代碼:

#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <iostream> int main(int argc, char *argv[]) { if (argc < 3) { printf("Usage: $0 no_ch_dir no_close_fd "); exit(0); } int no_ch_dir = atoi(argv[1]); int no_close_fd = atoi(argv[2]); std::cout << "main pid : " << getpid() << std::endl; std::cout << "main parent pid : " << getppid() << std::endl; std::cout << "main pwd : " << get_current_dir_name() << std::endl; if (daemon(no_ch_dir, no_close_fd) != 0) { // 1般都用daemon(0,0) // 成功返回0,失敗返回⑴ // daemon(0,0):chdir到/,關閉0,1,2描寫符。 std::cout << "stdout: daemon = ⑴" << std::endl; std::cerr << "stderr: daemon = ⑴" << std::endl; return 1; } std::cout << "stdout: daemon = 0" << std::endl; std::cerr << "stderr: daemon = 0" << std::endl; std::cout << "sub pid : " << getpid() << std::endl; std::cout << "sub parent pid : " << getppid() << std::endl; std::cout << "sub pwd : " << get_current_dir_name() << std::endl; while (1); return 0; }``` 編譯運行:

[chenming@localhost ~]g++test1.cc?otest1[chenming@localhost ] ./test1
Usage: 0nochdirnoclosefd[chenming@localhost ] ./test1 0 0
main pid : 7896
main parent pid : 7573
main pwd : /home/chenming
[chenming@localhost ~]ps?ef|greptest194:chenming78647573516:09pts/000:00:16vimtest1.cc95:chenming789719316:14?00:00:18./test10097:chenming78997573716:15pts/000:00:00grep?inE

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 久久大| 亚洲在线一区二区三区 | 国内免费精品视频 | 欧美视频不卡 | 美女视频黄的免费的 | av网站在线播放 | 久久久久久久久国产 | 亚洲精品久久久久久久久久久久久 | 亚洲精品国产精品国自产观看浪潮 | 日韩av网站在线观看 | 日韩欧美国产成人 | 在线电影91 | 亚洲成人精品一区二区三区 | 欧美1区| 亚洲二区在线观看 | 亚洲国产精品久久久久久 | 精品国产乱码久久久久久影片 | 国产真实精品久久二三区 | 夜夜草av| wwwww免费网站上线 | 久久桃色 | 精品久久久免费 | 国产一区在线免费观看 | a黄视频| 在线精品福利 | 毛片福利 | 久久99精品久久 | av片在线看免费高清网站 | 91精品国产综合久久久久久久久久 | 亚洲欧美日韩系列 | 久久久久久久久久一区二区 | 久久久福利 | 日韩视频一区二区三区四区 | 中文字幕在线日韩 | 国产亚洲综合性久久久影院 | 免费观看91视频 | 91九色在线观看 | 午夜av一区 | 人人爽人人爽 | 国产网站在线免费观看 | 国产成人在线免费观看 |