python - 在 nsq.run() 之后,我的 python 脚本没有执行“pynsq”包中的代码块
问题描述
我正在尝试将“pynsq”包(消息代理服务)用于我的 django 项目。但是当我使用 nsq.Reader() 类通过使用 nsq.run() 命令运行异步消费者请求时,它需要我的主线程和我的代码在此命令未执行之后。
例如:- 如图 nsq.run() 之后的图片所示,我正在尝试打印(“hello”),但是当我运行这个 .py 脚本时,打印函数没有调用。我已尽力为此找到解决方案.
可以在我的 django 项目中使用这个包吗?因为当我在 nsq.run() 之后运行这个脚本时,我的块代码没有执行。
请任何人都可以建议我在我的 django 项目中使用这个包的解决方案。
解决方案
nsq.run()
函数在后台启动事件循环。基本上,它是一个while
永远运行的循环。因此,在此行之后编写的任何代码都不会被执行。
请任何人都可以建议我在我的 django 项目中使用这个包的解决方案。
您可以nsq
在与 django 进程不同的进程中运行,然后使用Celery之类的东西在两者之间传递消息。
推荐阅读
- c# - 并行while循环
- vue.js - Vue i18n - 使用 routerview 将语言环境添加到 URL
- c# - C# UWP WriteableBitmap 到 MediaClip 的转换
- generics - 如何在 Kotlin 中将多个上限语法与委托语法结合起来
- qlikview - 计数功能 Qlikview
- angular - 打字稿:如何访问 navigator.connection 属性
- datepicker - mat datepicker angular6中的周选择
- functional-programming - 这段代码有错误吗?
- qt - QML通过文本更改矩形的颜色
- javascript - 无法将浏览器历史记录到上一页JS