Discuss / Python / 我的理解,不知道对不对

我的理解,不知道对不对

Topic source

greatzues

#1 Created at ... [Delete] [Delete and Lock User]

我理解的执行流程应该是这样的: 1.运行produce()后,开始执行到c.send(None),跳入consumer函数并执行到n = yield r停止,此时r = ''; 2.然后开始produce()的第一次循环,从r = c.send(n)开始,跳入consumer函数,并把send的参数赋值给consumer()第一次循环的n,此时r = 1,n = 1. 3.因为consumer()第一次循环的n != '',因此直接print [CONSUMER] Consuming 1...,并赋200 OKr 4.接着开始第二次循环,执行到n = yield r停止,即最后返回r给到produce()r变量,因此produceprint [PRODUCER] Consumer return: 200 OK。 5.循环2,3,4步骤直到第五次循环,然后手动关闭生成器。

不知道有没有错,若有错误希望大牛指出!


  • 1

Reply