注意:这只是 Linux
平台下的操作。
nohup
Linux 下有个叫 nohup,它可以把输出强行重定向到文本中。
配合 &
可以达到运行在后台。1$ nohup ./test &
将输出到 nohup.out
文件中。
fork() & exit()
那么问题来了,如何在 C/C++
(依赖 POSIX
)里实现捏?Linux
下有个叫做 fork()
的函数,它可以新建一个子进程(注意:不是子线程)。
我们可以利用它来让程序运行在后台。
上代码!123456789101112131415161718192021222324int main(){ pid_t pid = fork(); if (!pid) // pid==0 { // TODO: child process } else if (pid > 0) { // TODO: parent process } else { // TODO: fork failed return 1; } return 0;}
在 child process
中填写乃的代码就阔以辣。