在modern c++中通过RAII可以保证对象的构造和析构是成对出现。
Foo foo;
fork();
foo.doit(); // 父子进程中都使用foo
// 析构函数会被调用两次,父进程和子进程各一次
因此,我们在编写服务端程序的时候,“是否允许fork()”是在一开始就应该慎重考虑的问题,在一个没有为fork()做好准备的程序中使用fork(),会遇到难以预料的问题。
在modern c++中通过RAII可以保证对象的构造和析构是成对出现。
Foo foo;
fork();
foo.doit(); // 父子进程中都使用foo
// 析构函数会被调用两次,父进程和子进程各一次
因此,我们在编写服务端程序的时候,“是否允许fork()”是在一开始就应该慎重考虑的问题,在一个没有为fork()做好准备的程序中使用fork(),会遇到难以预料的问题。
Sign in to comment and like
No comments yet.