1.守护进程
守护进程(Daemon)是一种运行在后台的特殊进程,它独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件。
2.让程序只运行一次
如果让程序只运行一次,有很多方法,此处的一种方法是创建一个名字古怪的文件(保证不跟系统文件或其他文件重名),判断文件存在则让程序不再运行且提示程序正在运行,如果不存在则可以运行。
3.测试代码
此代码额外添加了系统LOG,记录操作的信息。
#include
#include
#include
#include
#include
#include
#include
#include
#define FILE "/var/cxl_single_file"
// 函数声明
void create_daemon(void);
void delete_file(void);
int main(int argc, char **argv)
{
int fd = -;
// 打开LOG系统
openlog(argv[], LOG_PID | LOG_CONS, LOG_USER);
// 打开文件,不存在则创建,存在则报错误提示
fd = open(FILE, O_RDWR | O_TRUNC | O_CREAT | O_EXCL, );
if ( fd < )
{
if ( errno == EEXIST )
{
pr