【generator101】 – generator是一种显式控制的协程

Python官方的实现里,协程只有generator这一招。协程其实就是一个可中途中断,由外部来控制执行进程的函数。除了官方的generator,还有很多第三方...

【妙用协程】 – 协程当然可以用来处理I/O阻塞问题

前面讲的两个协程的用途,一个是用来使用协程表达工作流里的流程的概念,一个是用协程来表达一个动画的播放过程。总结起来,就是用协程来解决带有流程阻塞的代码逻辑组织的...

协程原理】 – 协程不过是用户态的线程

TL;DR 笔者最美好的记忆来自于早年在6502 cpu的cc800上写汇编的年代, 那个时代的计算机甚至没有操作系统,也没有实模式等保护机制。在6502上写汇...

【妙用协程】 – I/O阻塞和流程阻塞

咱不咬文嚼字地掰什么是Blocking I/O,什么是Async I/O,没啥意思。代码是用来解决问题的。有的时候透彻理解问题,会比透彻理解某个具体的解法更重要...

【妙用协程】 – 诡异的web框架

在史前的web开发时代(我说的是AngularJS工程师开始变得价值不菲之前的黑暗岁月),web开发的一个痛点在于HTTP是一个无状态的协议,浏览器是一个无状态...

【妙用协程】 – 单元测试的setUp和tearDown

很多测试都需要在启动的时候做一些事情,然后在结束的时候再把做的事情给清理了。一般的做法是把这些动作写在setUp和tearDown的两个方法里,单元测试框架会负...

协程原理】 – 为什么greenlet的状态无法被保存

python主流的协程实现有五种: cPython的generator cPython的greenlet cPython的fibers stackless py...

协程原理】 – cPython的VM真变态

kilim在JVM上实现了协程,其实现看起来挺容易的:http://www.malhar.net/sriram/kilim/thread_of_ones_own...

Python 中的进程、线程、协程、同步、异步、回调

进程和线程究竟是什么东西?传统网络服务模型是如何工作的?协程和线程的关系和区别有哪些?IO过程在什么时间发生? 在刚刚结束的 PyCon2014 上海站,来自七...

Tornado 里的协程

在使用Tornado的时候经常会写这样的代码: @gen.coroutine def func(): key = object() callback = yie...

最新推荐