|
Boost Users : |
Subject: [Boost-users] boost::asio multiprocess
From: Marco Piacentini (marcopiacenta_at_[hidden])
Date: 2011-03-01 10:25:34
Hi guys...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:
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
}
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 (listen,
bind, accept, etc.) return void.
Thank you...
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net