Crow:run的流程3 接受http连接请求do_accept

这篇具有很好参考价值的文章主要介绍了Crow:run的流程3 接受http连接请求do_accept。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Crow:run的流程2 建立io_service及线程-CSDN博客

介绍了run的Crow会启动一个线程并用于处理do_accept。

那么do_accept本身是做什么的呢?

void Server::do_accept()
{
    if (!shutting_down_)
    {
        uint16_t service_idx = pick_io_service_idx();
        asio::io_service& is = *io_service_pool_[service_idx];
        task_queue_length_pool_[service_idx]++;
        ...
    }
}

用于根据当前处理任务的数量多少,从io_service池取出一个is,也就相当于是从线程池中取出一个线程(因为每个线程阻塞在一个io_service上)。

然后将增加该线程处理的任务数量。文章来源地址https://www.toymoban.com/news/detail-776849.html

void do_accept()
{
    if (!shutting_down_)
    {
        ...

        auto p = new Connection<Adaptor, Handler, Middlewares...>(
          is, handler_, server_name_, middlewares_

到了这里,关于Crow:run的流程3 接受http连接请求do_accept的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • HTTP协议概述 | 简析HTTP请求流程 | HTTP8种请求方法

    目录 🌏 HTTP的简单介绍 何为HTTP HTTP1.0与HTTP1.1 🌏 HTTP的请求方法 1、OPTIONS 2、HEAD 3、GET 4、POST 5、PUT 6、DELETE 7、TRACE 8、CONNECT 🌏 HTTP的工作原理 🌏 HTTP请求/响应的步骤 1、客户端连接到Web服务器 2、浏览器客户端发送HTTP请求 3、服务器接受请求并返回HTTP响应 4、释放连接TCP连

    2024年02月03日
    浏览(39)
  • http 请求流程,网络的七层模型

    浏览器的【网络进程】开始发起http请求,具体步骤如下: 应用层【也就是浏览器的网络进程】发起http请求 传输层 tcp 三次握手建立连接 http 请求加上 tcp 头部,包括源端口号,目的端口号和用于校验数据完整性的序号,向下传输【这里的上下是计算机网络模型中抽象的上下

    2024年02月02日
    浏览(44)
  • 如何发起一次完整的HTTP的请求流程

    目录 💡 预备知识 🔊 浏览器端发起 HTTP 请求流程 1、构建请求 2、查找缓存 3、准备IP地址和端口 4、等待TCP队列 5、建立TCP连接 6、发送HTTP请求 🔊 服务器端处理 HTTP 请求流程 1、返回请求 2、断开连接 3、重定向 HTTP 是一种允许浏览器向服务器获取资源的协议,是 Web 的基础

    2023年04月24日
    浏览(42)
  • HTTP的长连接和短连接详解(HTTP 请求头中的Connection字段)

    参考博客:https://www.cnblogs.com/hls-code/p/15015859.html 前言: HTTP的长连接和短连接本质上是TCP的长连接和短连接。 HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议。 IP协议主要解决网络路由和寻址问题,TCP协议主要解决如何在IP层之上可靠地传递数据包,使得网络

    2024年02月15日
    浏览(45)
  • 【Java EE】-HTTP请求构造以及HTTPS的加密流程

    作者 :学Java的冬瓜 博客主页 :☀冬瓜的主页🌙 专栏 :【JavaEE】 分享 : 在满园弥漫的沉静的光芒之前,一个人更容易看到时间,并看到自己的身影。——史铁生《我与地坛》 主要内容 :构造http请求,不需要写代码直接发送http请求:地址栏输入地址,html中 img标签,scri

    2024年02月02日
    浏览(43)
  • 5.6和5.7、项目整体流程代码实现,解析http请求报文

    代码地址 逻辑单元内部的一种高效编程方法:有限状态机 (finite state machine) 。 有的应用层协议头部包含数据包类型字段,每种类型可以映射为逻辑单元的一种执行状态,服务器可以根据它来编写相应的处理逻辑。如下是一种状态独立的有限状态机: 这是一个简单的有限状

    2023年04月25日
    浏览(51)
  • Java实现Http多次请求复用同一连接

    早在HTTP/1.0时代,每次HTTP请求都要创建一个连接,而创建连接的过程需要消耗资源和时间,代价相对昂贵,为了减少资源消耗,缩短响应时间,就需要重用连接。在后来的HTTP/1.1中,引入了连接复用的机制,Http Header中加入Connection: keep-alive来告诉对方这个请求响应完成后先不

    2024年02月03日
    浏览(39)
  • 一个 TCP 连接可以发送多少个 HTTP 请求

    第一个问题 第二个问题 第三个问题 第四个问题 第五个问题 曾经有这么一道面试题:从 URL 在浏览器被被输入到页面展现的过程中发生了什么? 相信大多数准备过的同学都能回答出来,但是如果继续问:收到的 HTML 如果包含几十个图片标签,这些图片是以什么方式、什么顺

    2024年02月08日
    浏览(48)
  • HTTP 和 HTTPS(请求响应报文格式 + 请求方法 + 响应状态码 + HTTPS 加密流程 + Cookie 和 Session)

    HTTP 全称 “ 超文本传输协议 ”,是一种基于传输层 TCP 协议实现的应用非常广泛的 应用层协议 我们平时打开一个网站,就是通过 HTTP 协议来传输数据的 当我们在浏览器中访问一个 “ 网址 ”(URL),浏览器就会给这个 URL 的服务器发送一个 HTTP 请求,服务器返回一个 HTTP 响

    2023年04月19日
    浏览(43)
  • 有方N58 HTTP POST 请求连接 TDengine

    串口调试软件:格西调试精灵    建立PPP连接                                 AT+XIIC=1r PPP链路建立成功,查询IP地址    AT+XIIC?r 设置网络APN                                 AT+CREG?r  运行结果,红线处是获取到的IP地址 链接:https://pan.baidu.

    2024年02月06日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包