WServer::post() and strand
I see that WServer::post() uses an unique boost::asio::io_service::strand (in WIOService.C)
Would it not be better to add a strand per session ?
It would allow all the worker to be used concurrently to process work from distinct sessions.
Currently, if post() have been used for multiple session, only one worker/thread will handle the load at a time, which seems rather inefficient.
In this case, the session lock would not be needed anymore (if all access to the session goes through post() or the strand).