Discuss / Python / <协程>参照楼上论坛资料梳理的流程,望指正

<协程>参照楼上论坛资料梳理的流程,望指正

Topic source

Gin阿金

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

执行流程:

  1. produce执行至c.send(None),跳转至consumer
  2. consumer执行至yield跳出(此两步为启动生成器)
  3. produce继续上一次执行,由n=0执行至r= c.send(n),跳转至consumer
  4. consumer由n=yield 1(r 值由c.send(n)c传入,但此时yield 1 不会执行,仅仅是将consumer中n赋为1)执行循环至下一个n=yield r ,期间print('[CONSUMER]Consuming 1…',并返回 r ='200 OK'
  5. produce接收r = '200 OK',print('[PRODUCER] Consumer return: 200 OK')
  6. 继续执行produce循环并循环4-5跳转直至produce循环结束,并结束consumer

  • 1

Reply