Daemon函数的用法
Daemon函数的用法
说明:
让一个程序后台运行。
原型:
#include <unistd.h> int daemon(int nochdir, int noclose);
参数:
当 nochdir为零时,当前目录变为根目录,否则不变;
当 noclose为零时,标准输入、标准输出和错误输出重导向为/dev/null,也就是不输出任何信 息,否则照样输出。
返回值:
deamon()调用了fork(),如果fork成功,那么父进程就调用_exit(2)退出,所以看到的错误信息 全部是子进程产生的。如果成功函数返回0,否则返回-1并设置errno。
示例:
#include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <fcntl.h> #include <limits.h> int main(int argc, char *argv[]) { char strCurPath[PATH_MAX]; if(daemon(1, 1) < 0) { perror("error daemon.../n"); exit(1); } sleep(10); if(getcwd(strCurPath, PATH_MAX) == NULL) { perror("error getcwd"); exit(1); } printf("%s/n", strCurPath); return 0; }
假如运行成功,父进程在daemon函数运行完毕后自杀,以后的休眠和打印全部是子进程来运行。
可以修改daemon函数的参数来查看效果。
可以去掉daemon一句,用./a.out&来验证效果。
Daemon函数的用法相关推荐
- 关于C语言中的malloc和free函数的用法
一.malloc()和free()的基本概念以及基本用法: 1.函数原型及说明: void *malloc(long NumBytes):该函数分配了NumBytes个字节,并返回了指向这块内存的指针 ...
- Python assert断言函数及用法
Python assert断言函数及用法 Python assert 语句,又称断言语句,可以看做是功能缩小版的 if 语句,它用于判断某个表达式的值,如果值为真,则程序可以继续往下执行:反之,Pyt ...
- python中的counter()、elements()、most_common()和subtract()函数的用法
python中的counter().elements().most_common()和subtract()函数的用法 counter()方法: class collections.Counter([i ...
- Java正则表达式--Matcher.group函数的用法
https://www.cnblogs.com/jiafuwei/p/6080984.html Java正则表达式--Matcher.group函数的用法 原来,group是针对()来说的,group ...
- MapInfo中常用查询函数及用法
MapInfo中常用查询函数及用法: 函数用途 语法 备注 图层中选点 Str$(obj)="point": Str(String)表示字符串:point表示点: 图层中选线 St ...
- Oracle trunc()函数的用法
--Oracle trunc()函数的用法 /**************日期********************/ 1.select trunc(sysdate) from dual --20 ...
- php error log 函数,php日志函数error_log如何使用 php日志函数error_log用法介绍
php日志函数error_log如何使用?这篇文章主要介绍了php日志函数error_log用法,结合实例形式分析了php日志函数error_log相关的配置文件设置.函数功能.用法与使用注意事项,需 ...
- Python中的map()函数和reduce()函数的用法
Python中的map()函数和reduce()函数的用法 这篇文章主要介绍了Python中的map()函数和reduce()函数的用法,代码基于Python2.x版本,需要的朋友可以参考下
- php函数find的用法,c语言find函数的用法详解
c语言find函数的用法详解 C语言之find()函数 find函数用于查找数组中的某一个指定元素的位置. 比如:有一个数组[0, 0, 5, 4, 4]: 问:元素5的在什么位置,find函数 返回 ...
最新文章
- 丢失/root目录导致命令行-bash-4.1#,解决方法
- mysql批量insert bug_MySQL Bug insert into on duplicate key update 语法更新 text blob 大字段导致 MySQL crash...
- web02--jsp数据传递
- 如何科学地完成一场 AR 发布会?
- 10个非常有用的CSS hack和技术
- web服务减少服务器TIME_WAIT
- 杭州市政府数据容灾集中备份业务整体外包(2009)项目招标公告
- java构建二叉树_java实现二叉树的构建以及3种遍历方法
- 总结G1垃圾收集器面试题
- ext2文件系统详解
- UI设计中线性图标设计总结
- 14款S400升级20款S450外观套件
- Termux 速成指南
- HTML5 定位的使用
- 正多边形的滚动与旋轮线下的面积
- 安卓无障碍API封装库: Android-Accessibility-Api
- tengine升级h2的问题
- 图纸文档防泄密之企业加密软件解决方案
- 简述autocad在测绘工程中的应用_AutoCAD及测绘应用
- 数据库索引及其数据结构