
网络编程
Coolhao_
进击的菜鸟
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
tcp知乎
tcp 知乎回答 参考知乎 其实就是指建立一个TCP连接时,需要客户端和服务器总共发送3个包。进行三次握手的主要作用就是为了确认双方的接收能力和发送能力是否正常、指定自己的初始化序列号为后面的可靠性传送做准备。实质上其实就是连接服务器指定端口,建立TCP连接,并同步连接双方的序列号和确认号,交换TCP窗口大小信息。 刚开始客户端处于 Closed 的状态,服务端处于 Listen 状态。 进行三次...原创 2020-04-08 21:33:33 · 258 阅读 · 0 评论 -
epoll使用框架
epoll的使用,包括一个经典通用框架 for( ; ; ) { nfds = epoll_wait(epfd,events,20,500); for(i=0;i<nfds;++i) { if(events[i].data.fd==listenfd) //有新的连接 { ...原创 2020-04-02 15:40:50 · 235 阅读 · 0 评论 -
线程模型演化历史/线程池历程
参考链接原创 2020-03-31 23:43:07 · 158 阅读 · 0 评论 -
muduo知识点
C++中的RAII机制 RAII是Resource Acquisition Is Initialization(wiki上面翻译成 “资源获取就是初始化”)的简称,是C++语言的一种管理资源、避免泄漏的惯用法。利用的就是C++构造的对象最终会被销毁的原则。RAII的做法是使用一个对象,在其构造时获取对应的资源,在对象生命期内控制对资源的访问,使之始终保持有效,最后在对象析构的时候,释放构造时获取的...原创 2020-03-20 00:20:29 · 469 阅读 · 0 评论 -
http服务器原理
web服务器工作原理 从零实现web服务器 http协议简易教程 http的url格式 http协议的URL格式: http: //host[:port][abs_path] , http表示使用http协议来进行资源定位;host是主机域名;port是端口号,一般有默认的;abs_path代表资源的路径。 http请求报文和响应报文 请求报文响应报文 http协议的head和body...原创 2020-03-10 22:33:05 · 727 阅读 · 0 评论 -
多线程编程
线程创建原创 2020-03-06 00:05:27 · 322 阅读 · 0 评论 -
网络编程
poll函数及简单服务器客户端编程 当需要同时监听多个文件描述符时,就需要I/O复用函数,I/O复用函数有select、poll、epoll,今天主要使用poll函数。 poll()接受一个指向结构’struct pollfd’列表的指针,其中包括了你想测试的文件描述符和事件。事件由一个在结构中事件域的比特掩码确定。当前的结构在调用后将被填写并在事件发生后返回。 函数原型: #include<...原创 2020-03-05 23:45:59 · 193 阅读 · 0 评论 -
5种网络IO模型(有图,很清楚)
同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能不同,比如wiki,就认为asynchronous IO和non-blocking IO是一个东西。这其实是因为不同的人的知识背景不同,并且在讨论这个问题的时候上下文(context)也不...转载 2020-02-28 23:35:16 · 224 阅读 · 0 评论 -
网络编程函数
新型网路地址转化函数inet_pton和inet_ntop 这两个函数是随IPv6出现的函数,对于IPv4地址和IPv6地址都适用,函数中p和n分别代表表达(presentation)和数值(numeric)。地址的表达格式通常是ASCII字符串,数值格式则是存放到套接字地址结构的二进制值。 #include <arpe/inet.h> int inet_pton(int famil...原创 2020-02-28 14:39:08 · 255 阅读 · 0 评论