Boost logo

Boost Users :

Subject: Re: [Boost-users] Example HTTP Server 3, Requests are processed one by one on Win32?
From: Igor R (boost.lists_at_[hidden])
Date: 2011-09-07 10:42:55


> To get into the threading stuff, I did add some output to the std::cout in
> the request_handler part at the top of the method “handle_request“ following by a sleep(5000).
>
> After this I compile (without errors/warnings) and run the program providing
> Ip/Port, docroot and threadpool size 20.
> When I start a request to it with my browser, as expected I get the output
> on the console.
> But when I start some requests concurrent, the requests seems processed one
> by one (not concurrent as expected). I don’t know, but I expect, that the Requests
> would be processed concurrent (1 Request = 1 Thread?)

As far as I see, request_handler is called from handle_read, and the
latter handler is wrapped with strand -- especially to prevent such a
concurrecy:
http://www.boost.org/doc/libs/1_47_0/doc/html/boost_asio/reference/io_service__strand.html


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