摘要: 1.协程的总结 明早抽查提问 答不上的五遍 什么是协程 让单线程可以并发处理的任务 为什么需要协程 因为cpython 由于GIL 导致同一时间只有一个线程再跑 协程的使用场景 2.使用协程完成TCP套接字编程 支持多客户端同时访问 客户端 3.什么是异步 什么是异步回调 为什么需要异步回调 异步 阅读全文
posted @ 2018-11-13 18:15 msjaxuexi 阅读(84) 评论(0) 推荐(0) 编辑
摘要: 协程的目的是在单线程下实现并发 为什么出现协程? 因为cpython 由于GIL 导致同一时间只有一个线程再跑 意味着 如果你的程序时计算密集 多线程效率也不会提升 如果是io密集型 有没有必要再单线程下实现并发 没有 我会开启多线程来处理io 子线遇到io cpu切走 但是请问 你能保证一定切到主 阅读全文
posted @ 2018-11-13 17:12 msjaxuexi 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 线程队列 堆栈 优先级堆栈 阅读全文
posted @ 2018-11-13 16:34 msjaxuexi 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 为什么要异步回调? 子进程帮助主进程完成任务 处理任务的结果应该交还主进程 其他方式也可以将数据交还给进程 1.shutdown 主进程会等待所有任务完成 2.result函数 会阻塞直到任务完成 特点:都会阻塞,导致效率降低,所有使用回调 shutdown result 那么使用异步回调即可达到 阅读全文
posted @ 2018-11-13 16:04 msjaxuexi 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 线程运行中的三种状态: 1、运行态(正在cpu处理) 2、阻塞态(遇到IO操作的时候) 3、就绪态(等待切换cpu处理) 阻塞和非阻塞 阻塞是指遇到IO操作,代码卡住无法执行下一行,cpu自动切换到其他任务。 非阻塞与阻塞正好相反,代码正在执行(运行状态)或处于就绪态。 阻塞和非阻塞都是描述运行的状 阅读全文
posted @ 2018-11-13 14:49 msjaxuexi 阅读(100) 评论(0) 推荐(0) 编辑