1.非阻塞IO 2.阻塞IO 3.IO多路复用 3.1 IO多路复用中的select 服务端 3.2 linux上更好的IO多路复用epoll、selectors选择当前系统最优的IO多路复用机制 服务端 客户端 4.信号驱动IO 5.异步IO 6.五种IO模型的比较,个人觉得肯定还是异步IO好 ...
分类:
其他好文 时间:
2018-10-28 22:09:41
阅读次数:
225
IO模型介绍: * blocking IO 阻塞IO * nonblocking IO 非阻塞IO * IO multiplexing IO多路复用 * signal driven IO 信号驱动IO () * asynchronous IO 异步IO IO模型介绍: 为了更好地了解IO模型,我们需 ...
分类:
其他好文 时间:
2018-10-05 17:26:26
阅读次数:
166
1、使用多进程,充分利用机器的多核性能 2、对于性能影响较大的部分代码,可以使用C或C++编写 3、对于IO阻塞造成的性能影响,可以使用IO多路复用来解决 4、尽量使用Python的内建函数 5、尽量使用局部变量 ...
分类:
编程语言 时间:
2018-10-02 22:18:50
阅读次数:
266
为了更好地了解IO模型,我们需要事先回顾下:同步、异步、阻塞、非阻塞 同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别?这个问题其实不同的人给出的答案都可能不同,比如wiki ...
分类:
其他好文 时间:
2018-09-27 18:13:15
阅读次数:
146
完全来自:http://www.cnblogs.com/alex3714/articles/5876749.html 同步IO和异步IO,阻塞IO和非阻塞IO分别是什么,到底有什么区别?不同的人在不同的上下文下给出的答案是不同的。所以先限定一下本文的上下文。 一 概念说明 在进行解释之前,首先要说明 ...
分类:
编程语言 时间:
2018-09-26 23:59:45
阅读次数:
375
第一课-Epoll框架 (1)阻塞型IO 阻塞是指没有获得资源则挂起进程,直到获得资源为止。被挂起的进程进入休眠状态,被调度器的运行队列移走,直到等待条件被满足。 非阻塞是不能进行设备操作时不挂起,或放弃,或反复查询,直到可以进行操作为止。 驱动程序常需要这种能力:当应用程序进行read(),wri ...
分类:
其他好文 时间:
2018-09-23 16:23:59
阅读次数:
243
协程介绍 协程:是单线程下的并发,又称微线程,纤程。协程是一种用户态的轻量级线程,即线程是由用户程序自己控制调度的。 需要强调的是: 对比操作系统控制线程的切换,用户在单线程内控制线程的切换 优点如下: 1. 线程的切换开销更小,属于线程级别的切换,操作系统完全感知不到,因而更加轻量级2. 单线程内 ...
分类:
编程语言 时间:
2018-09-10 21:19:32
阅读次数:
239
阻塞IO 传统的 IO 流都是阻塞式的。 也就是说,当一个线程调用 read() 或 write()时,该线程被阻塞,直到有一些数据被读取或写入,该线程在此期间不能执行其他任务。 因此,在完成网络通信进行 IO 操作时,由于线程会阻塞,所以服务器端必须为每个客户端都提供一个独立的线程进行处理,当服务 ...
分类:
其他好文 时间:
2018-09-09 15:00:49
阅读次数:
167
IO密集型程序 在程序执行过程中存在大量IO操作,而CPU操作较少,消耗CPU较少,运行效率较低CPU(计算)密集型程序 在程序执行中,CPU运算较多,IO操作相对较少(消耗CPU大,运行速度快)IO分类: 阻塞IO 阻塞情况: 是IO的默认形态,是效率较低的一种IO情形 1 因为某种条件没有达成造... ...
分类:
其他好文 时间:
2018-09-07 19:18:35
阅读次数:
261
IO阻塞问题,请参考一下博文: https://blog.csdn.net/yyxyong/article/details/62894064 resdLine 如果不指定buffer大小,则readLine()使用的buffer有8192个字符。在达到buffer大小之前,只有遇到"/r"、"/n" ...
分类:
其他好文 时间:
2018-08-05 14:28:35
阅读次数:
283