title: boost::asio server multi-process
body: <p>I would to make a simple multi process (not thread) server. I've seen the iterative example in which it handles one request at a time.
  Instead I need to handle more requests(more on less 10) at the same time.
  In the classic c and c++ examples, I've seen that the server is designed like the following:</p>
  
  <pre><code>int listensd, connsd; // listening socket and conection socket
  pid_t pid;            //process id
  listensd=socket(....); 
  bind(listensd,...);
  listen(listensd,...);
  for(;;)
  {
  
    connsd=accept(listensd,...);
    if((pid=fork())==0)  //child process
    {
          close(listensd);  //close the listen socket
          do_it(connsd);    //serve the request
          close(connsd);    //close the connection socket
          exit(0); 
     }
  close(connsd);     //the parent closes the connection socket
  }
  </code></pre>
  
  <p>Is it possible to do something like that with boost? I really don't know how obtain the two different socket, because in boost all the function (<code>listen</code>, <code>bind</code>, <code>accept</code>, etc.) return void.</p>