上一页 1 2 3 4 5 6 7 ··· 15 下一页

2023年11月7日

linux 阻塞/非阻塞、 同步/异步(网络IO) Unix/Linux上的五种IO模型

摘要: 典型的一次 IO 的两个阶段是什么?数据就绪 和 数据读写 网络IO阶段1: 数据就绪(数据准备):根据系统 IO 操作的就绪状态(分为阻塞和非阻塞) 阻塞:调用IO的方法的线程进入阻塞状态 非阻塞:不会改变线程的状态,通过返回值判断 网络IO阶段2: 数据读写:根据应用程序和内核的交互方式(将TC 阅读全文

posted @ 2023-11-07 11:34 廿陆 阅读(62) 评论(0) 推荐(0) 编辑

2023年11月3日

linux 本地套接字通信

摘要: 本地套接字的作用:本地的进程间通信 有关系的进程间通信 没有关系的进程间的通信 本地套接字实现流程与网络套接字类似,一般采用 TCP 通信流程 本地套接字通信流程: //服务器端 //1.创建监听的套接字 int lfd = socket(AF_UNIX/AF_LOCAL, SOCK_STREAM, 阅读全文

posted @ 2023-11-03 16:22 廿陆 阅读(60) 评论(0) 推荐(0) 编辑

linux 组播

摘要: 组播(多播): 单播地址标识单口 IP 接口,广播地址标识某个子网的所有 IP 接口,多播地址标识一组 IP 接口。单播和广播是寻址方案的两个极端(要么单个要么全部),多播则在两者之间提供一种折中方案。多播数据报只应该由对它感兴趣的接口接收,也就是说由运行相应多播会话应用系统的主机上的接口接收。另外 阅读全文

posted @ 2023-11-03 11:40 廿陆 阅读(152) 评论(0) 推荐(0) 编辑

linux 广播 UDP

摘要: UDP通信:广播 向子网中多台计算机发送消息,并且子网中所有的计算机都可以接收到发送方发送的消息,每个广播消息都包含一个特殊的 IP 地址,这个 IP中子网内主机标志部分的二进制全部为 1(255) a. 只能在局域网中使用 b. 客户端需要绑定服务器广播使用的端口,才可以接收到广播的消息 //设置 阅读全文

posted @ 2023-11-03 10:59 廿陆 阅读(75) 评论(0) 推荐(0) 编辑

linux UDP 通信

摘要: UDP: #include <sys/types.h> #include <sys/socket.h> ssize_t sendto(int sockfd, const void *buf, size_t len, int flags, const struct sockaddr *dest_add 阅读全文

posted @ 2023-11-03 09:51 廿陆 阅读(22) 评论(0) 推荐(0) 编辑

2023年10月31日

linux 多路复用---epoll

摘要: rbr(红黑树):需要检测的文件描述符 rdlist:有数据传递的文件描述符 epoll API: /* #include <sys/epoll.h> //创建一个新的 epoll 实例,在内核中创建了一个数据,这个数据中有两个比较重要的数据, 一个是需要检测的文件描述符的信息(红黑树),还有一个是 阅读全文

posted @ 2023-10-31 11:02 廿陆 阅读(57) 评论(0) 推荐(0) 编辑

2023年10月30日

linux 多路复用---poll

摘要: poll定义: /* #include <poll.h> struct pollfd { int fd; //委托内核检测的文件描述符 short events; //委托内核检测文件描述符的什么事件 short revents; //文件描述符实际发生的事件(返回的事件) }; //struct 阅读全文

posted @ 2023-10-30 16:59 廿陆 阅读(38) 评论(0) 推荐(0) 编辑

2023年10月25日

linux IO多路复用 select poll epoll

摘要: I/O多路复用(I/O多路转接)*** ***I/O多路复用使得程序能同时监听多个文件描述符,能够提高程序的性能***,Linux下实现的 I/O 多路复用的系统调用主要有 select、poll 和 epoll。 输入指的是程序数据写入到内存中 从内存读取到文件中是输出 I/O指的是对两端(客户端 阅读全文

posted @ 2023-10-25 11:13 廿陆 阅读(23) 评论(0) 推荐(0) 编辑

2023年10月24日

linux TCP状态转换 半关闭 shutdown netstat 端口复用 setsockopt

摘要: TCP状态转换:发生在三次握手四次挥手的过程中 黑色为异常的信息; 红色线为客户端; 绿色虚线为服务器端; 报文段寿命: 2MSL(Maximum Segment Lifetime) 主动断开连接的一方,最后进出入一个 TIME_WAIT状态,这个状态会持续: 2msl msl:官方建议:2分钟,实 阅读全文

posted @ 2023-10-24 11:40 廿陆 阅读(63) 评论(0) 推荐(0) 编辑

linux 多进程实现并发服务器 多线程并发

摘要: TCP通信并发** 要实现TCP通信服务器处理并发任务,使用多线程或多进程来解决。 思路: 1. 一个父进程,多个子进程 2. 父进程负责等待并接受客户端的连接 3. 完成通信,接受一个客户端连接,就创建一个子进程用于通信。 客户端: 1 //TCP通信的客户端 2 3 #include <stdi 阅读全文

posted @ 2023-10-24 08:54 廿陆 阅读(89) 评论(0) 推荐(0) 编辑

上一页 1 2 3 4 5 6 7 ··· 15 下一页
点击右上角即可分享
微信分享提示