Linux网络编程
程序猿阿三
Good ideal worth spreading
展开
-
IO复用之select poll epoll 函数
select函数:该函数允许进程指示内核等待多个事件中的任何一个发生,并只在有一个或多个事件发生或经历一段时间后才唤醒他#inlcude <sys/select.h>#include<sys/times.h>int select(int maxfdp1,fd_set *readset,fd_set *writeset,fd_set *exceptset,const struct timeval原创 2016-06-08 16:17:42 · 707 阅读 · 0 评论 -
线程和 进程(包括锁)
程序 线程 和程序程序: 完成特定功能的一系列有序指令集合 可执行文件 代码段+数据段进程:程序的一次动态执行过程 代码段+数据段+堆栈段+PCB两者比较 进程 程序 动态的 数据段 短暂的 永久的 堆栈段+PCB 一个进程只能对应一个程序 一个程序可以对应多个进程 进程 线程 是资源竞争的基本单位 程序执行最小单位 线程共享进程原创 2016-06-12 18:13:40 · 1578 阅读 · 0 评论 -
epoll之一:epoll的原理
之前 我写过一篇博客IO复用之select poll epoll 函数,大概介绍了一下epoll和select,poll的一些区别,接下来要 从原理剖析epoll的强大的原因select和poll的工作机制在某一时刻,进程收集有事件连接时,大部分的连接是没有发生事件,但是 select和poll的工作机制,在 每次收集事件 的 时候,都把全部 的 连接的 套接字传给操作系统(这首先就是用户态内存到原创 2016-06-22 13:36:33 · 539 阅读 · 0 评论 -
epoll之二:epoll实战
epoll_create系统调用int epoll_create(int size);epoll_create返回 一个句柄,之后epoll的 使用都将依靠这个 句柄 来 标识,参数 size是告诉epoll所要处理的大致事件数目,不再使用epoll时,必须调用close 关闭这个句柄。size这个参数只是 告诉内核这个epoll对象会处理的事件大致数目,而不是 能够处理 的事件的最大个数epoll原创 2016-06-22 14:56:29 · 830 阅读 · 0 评论