1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
#include <iostream>
#include <unistd.h>
#include "fork.h"
class Daemon: public Fork
{
void parentProcess() override // the parent does nothing.
{}
void childProcess() override // actions by the child
{
sleep(3);
// just a message...
std::cout << "Hello from the child process\n";
throw 0; // The child process ends
}
};
int main()
try
{
Daemon{}.fork();
}
catch(...)
{}
/*
Generated output:
The next command prompt, then after 3 seconds:
Hello from the child process
*/
|