35 lines
751 B
C++
35 lines
751 B
C++
#include "session.h"
|
|
|
|
#include <boost/asio/spawn.hpp>
|
|
#include <iostream>
|
|
|
|
using tcp = boost::asio::ip::tcp;
|
|
|
|
void start_server(std::string address, std::string port)
|
|
{
|
|
boost::asio::io_service io_service;
|
|
tcp::resolver resolver(io_service);
|
|
tcp::resolver::query query(address, port);
|
|
tcp::acceptor acceptor(io_service, *resolver.resolve(query));
|
|
|
|
boost::asio::spawn(io_service, [&](boost::asio::yield_context yield){
|
|
for (;;)
|
|
{
|
|
session* s = new session(io_service);
|
|
acceptor.async_accept(s->socket(), yield);
|
|
s->start();
|
|
}
|
|
});
|
|
|
|
io_service.run();
|
|
}
|
|
|
|
int main()
|
|
{
|
|
// server srv("0.0.0.0", "12345");
|
|
// srv.run();
|
|
|
|
start_server("0.0.0.0", "12345");
|
|
|
|
return 0;
|
|
} |