摘要: 昨日内容回顾 协程实际上是一个线程,执行了多个任务,遇到IO就切换 切换,可以使用yield,greenlet 遇到IO gevent: 检测到IO,能够使用greenlet实现自动切换,规避了IO阻塞问题。 昨天没有讲到的小问题,看下面的例子: 执行程序,没有输出结果 加上join 执行输出:ea 阅读全文
posted @ 2018-05-18 15:43 肖祥 阅读(547) 评论(0) 推荐(0) 编辑
摘要: python全栈11期月考题 答案: 第29题讲解: 先来讲一个概念 生成器表达式和列表推导式的区别: 生成器表达式是要一个值计算一个值 列表表达式是一次把所有的值都拿出来 步骤分解: 执行输出: [<function func at 0x0000020B24397F28>, <function f 阅读全文
posted @ 2018-05-17 22:02 肖祥 阅读(1294) 评论(0) 推荐(1) 编辑
摘要: 昨日内容回顾 I/O模型,面试会问到I/O操作,不占用CPU。它内部有一个专门的处理I/O模块。print和写log 属于I/O操作,它不占用CPU 线程GIL保证一个进程中的多个线程在同一时刻只有一个可以被CPU执行 后续的项目,特别是处理网络请求,非常多。 实例化一个Lock(),它就是一个互斥 阅读全文
posted @ 2018-05-17 21:25 肖祥 阅读(703) 评论(0) 推荐(0) 编辑
摘要: 昨日内容回顾 线程什么是线程?线程是cpu调度的最小单位进程是资源分配的最小单位 进程和线程是什么关系? 线程是在进程中的 一个执行单位 多进程 本质上开启的这个进程里就有一个线程 多线程 单纯的在当前进程中开启了多个线程 线程和进程的区别: 线程的开启 销毁 任务切换的时间开销小 在同一个进程中数 阅读全文
posted @ 2018-05-16 14:54 肖祥 阅读(596) 评论(0) 推荐(0) 编辑
摘要: 昨日内容回顾 队列是内置锁的,所以别的应用调用它,是安全的。凡是涉及到手动加锁的,都是不安全的。常用的一般都是消息中间件 没有返回值的情况 close和join成对使用 执行输出: ********** 有返回值的情况 执行输出: ********** 总结: 主进程默认等待子进程结束 —— 守护进 阅读全文
posted @ 2018-05-15 15:47 肖祥 阅读(672) 评论(0) 推荐(0) 编辑
摘要: 昨日内容回顾 一、进程间通信(队列和管道) 判断队列是否为空 执行输出:True 判断队列是否满了 执行输出:False 如果队列已满,再增加值的操作,会被阻塞,直到队列有空余的 执行输出: 10True 从结果中,可以看出,下面的操作q.put(111)之后的代码被阻塞了。 总结: 队列可以在创建 阅读全文
posted @ 2018-05-14 16:31 肖祥 阅读(1050) 评论(0) 推荐(0) 编辑
摘要: 昨日内容回顾 python中启动子进程并发编程并发 :多段程序看起来是同时运行的ftp 网盘不支持并发socketserver 多进程 并发异步 两个进程 分别做不同的事情创建新进程join :阻塞 直到 子进程结束守护进程 daemon :子(守护)进程随着主进程代码的结束而结束进程之间数据隔离使 阅读全文
posted @ 2018-05-11 15:48 肖祥 阅读(666) 评论(0) 推荐(0) 编辑
摘要: 昨日内容回顾 操作系统纸带打孔计算机批处理 —— 磁带 联机 脱机多道操作系统 —— 极大的提高了CPU的利用率 在计算机中 可以有超过一个进程 进程遇到IO的时候 切换给另外的进程使用CPU 数据隔离 进程与进程之间的数据是隔离的 时空复用 在同一时刻 多个程序宏观上的并行分时系统 —— 反而降低 阅读全文
posted @ 2018-05-10 15:26 肖祥 阅读(2516) 评论(0) 推荐(0) 编辑
摘要: 昨日内容回顾: 一、操作系统的发展史 手工操作 —— 穿孔卡片 1946年第一台计算机诞生--20世纪50年代中期,计算机工作还在采用手工操作方式。此时还没有操作系统的概念。 程序员将对应于程序和数据的已穿孔的纸带(或卡片)装入输入机,然后启动输入机把程序和数据输入计算机内存,接着通过控制台开关启动 阅读全文
posted @ 2018-05-09 15:14 肖祥 阅读(566) 评论(0) 推荐(0) 编辑
摘要: 先来回顾一下昨天的内容 黏包现象粘包现象的成因 : tcp协议的特点 面向流的 为了保证可靠传输 所以有很多优化的机制 无边界 所有在连接建立的基础上传递的数据之间没有界限 收发消息很有可能不完全相等 缓存机制,导致没发过去的消息会在发送端缓存 没接收完的消息会在接收端缓存解决: 给应用层定制协议解 阅读全文
posted @ 2018-05-08 15:11 肖祥 阅读(691) 评论(0) 推荐(0) 编辑