Crow:run的流程4 准备接收http请求

完成tcp的accept后,下一步需要接收tcp的数据,同时完成http的分析

class Connection
{
public:
    void start()
    {
        adaptor_.start([this](const asio::error_code& ec) {
            if (!ec)
            {
                start_deadline();
                parser_.clear();

                do_read();
            }
            else
            {
                CROW_LOG_ERROR << "Could not start adaptor: " << ec.message();
                check_destroy();
            }
        });
    }
}
struct SocketAdaptor
{
    template
    void start(F f)
    {
        f(asio::error_code());
    }
};

struct SSLAdaptor
{
    template
    void start(F f)
    {
        ssl_socket_->async_handshake(asio::ssl::stream_base::server,
                                     [f](const asio::error_code& ec) {
                                         f(ec);
            

你可能感兴趣的:(Crow,c++)