I am a newbie for Boost Asio libraries, my requirement is to build a server, which should listen on 600 different ports asynchronously (TCP communication). Can someone suggest me a smart way to achieve this using Boost Asio. I have tried using echo server example provided at Boost Asio documentation but could not really understand much
boost::asio::io_service io_service;
using namespace std; // For atoi.
for(long port=50000;port<=50600;port++)
{
server s(io_service, port);
io_service.run();
}
Can someone throw light on this?
The
io_serviceis responsible for handling all I/O that is assigned to it; you don’t need to create a separate one for each port. For what you are trying to do you will need to create 600 separate server instances then callio_service.run().