如何找到龙卷风的根本原因“BadYieldError:产生未知对象无”

时间:2016-05-24 05:24:19

标签: python tornado coroutine

在第二次收益时得到错误的代码存根如下:这里ostream是tornado.process.Subprocess.STREAMclwebsocket.WebSocketHandlers and the function whose body the包含装饰符{{1}的列表}和@web.asynchronous

@gen.coroutine

我没有在龙卷风4.3上得到这个错误但是我在龙卷风版本为4.0的机器上得到了这个错误:我假设ostream上的传入字节序列是相同的,因为popen的python代码是相同的。< / p>

我刚刚开始玩龙卷风,并想知道如何调试为什么这似乎是4.0上的问题而不是4.3。

1 个答案:

答案 0 :(得分:1)

查看docs for WebSocketHandler.write_message

  

版本4.3中更改:返回可用于流控制的Future。

在版本4.3之前,write_message返回None,因此无法与yield一起使用。如果您的应用程序需要对传出的websocket消息进行流量控制,则需要Tornado 4.3或更新版本。