
UNIX网络编程
文章平均质量分 80
UNIX网络编程学习笔记
东阳z
从大数据到深度学习到C++到Java
展开
-
IO复用——poll函数
东阳的学习笔记poll提供的功能和 select 类似,不过在处理流设备时,它能提供额外的信息。#include <poll.h>int poll(struct pollfd *fdarray, unsigned long nfds, int timeout);第一个参数时指向一个结构数组第一个元素的指针。每个数组元素都是一个pollfd结构,用于指定测试某个给定描述符fd的条件。struct pollfd{ int fd; /* descriptor to .原创 2021-01-26 13:05:06 · 298 阅读 · 0 评论 -
I/O复用——select函数详解
东阳的学习笔记select函数允许进程指示内核等待多个事件中的任何一个发生,并且只在有一个或多个事件发生或经历一段指定的时间后唤醒它。例如:我们可以调用 select,告知内核对哪些描述符(就读、写或异常条件)感兴趣或等待多长时间。集合{1, 4, 5}中的任何描述符准备好读;集合{2, 7} 中的任何描述符准备好写;集合{1, 4} 中的任何描述符有异常条件待处理;我们感兴趣的描述符不局限于套接字,任何描述符都可以用 select 来测试/* According to POSIX.1.原创 2021-01-25 20:55:21 · 236 阅读 · 0 评论 -
常见的5种I/O模型
学习地址:https://www.cnblogs.com/xiaoxi/p/6525396.html在《Unix网络编程》一书中提到了五种IO模型,分别是:阻塞IO、非阻塞IO、多路复用IO、信号驱动IO以及异步IO。1、阻塞IO模型最传统的一种IO模型,即在读写数据过程中会发生阻塞现象。当用户线程发出IO请求之后,内核会去查看数据是否就绪,如果没有就绪就会等待数据就绪,而用户线程就会处于阻塞状态,用户线程交出CPU。当数据就绪之后,内核会将数据拷贝到用户线程,并返回结果给用户线程,用户线程才解除b转载 2021-01-20 20:58:40 · 822 阅读 · 0 评论 -
linux惊群效应
原文连接:https://xiaomaweifu.blog.youkuaiyun.com/article/details/78648798linux惊群效应详细的介绍什么是惊群,惊群在线程和进程中的具体表现,惊群的系统消耗和惊群的处理方法。1、惊群效应是什么?惊群效应也有人叫做雷鸣群体效应,不过叫什么,简言之,惊群现象就是多进程(多线程)在同时阻塞等待同一个事件的时候(休眠状态),如果等待的这个事件发生,那么他就会唤醒等待的所有进程(或者线程),但是最终却只可能有一个进程(线程)获得这个时间的“控制权”,.转载 2021-02-03 18:55:53 · 397 阅读 · 0 评论