Boost logo

Boost :

Subject: Re: [boost] Boost.Process 0.5 released
From: Klaim - Joël Lamotte (mjklaim_at_[hidden])
Date: 2012-08-19 07:15:52


About the pid stuff, I need to add an argument that might help design child:

std::thread (and boost::thread) also provide the id of the thread. They
just provide the identifier using a platform specific type, letting the
user use it with platform API functions.

If child was designed this way and with RAII and move-only you would get:
 1. execute() could be the child constructor (like thread constructor
launch the thread if arguments are provided) - maybe child could be changed
to child_process then.
 2. no need for id-based constructors.
 3. clean interface with only one function that return a platform-specific
type.
 4. sharing would be explicit, as said before

A note looking quickly at the source:

In process/config.hpp

#elif defined(BOOST_WINDOWS_API)
# include <Windows.h>

This is a bit heavy. Don't you need to precede this header with
WIN32_LEAN_AND_MEAN
? (see http://en.wikipedia.org/wiki/Windows.h)

In child.hpp

Why are (platform-specific) members public?

Joel Lamotte


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk