1

我需要在 ev3dev 设备上运行的 micropython 中使用某种线程安全队列。

我正在尝试使用uasyncio模块,但是虽然当我尝试使用 Queue 时它似乎正确识别了库,但我得到了奇怪的行为。以下是在交互式 micropython 会话中执行的命令示例:

MicroPython v1.9.4 on 2018-05-22; linux version
Use Ctrl-D to exit, Ctrl-E for paste mode
>>> from uasyncio.queues import Queue
>>> q = Queue()
>>> q.put("Item1")
**<generator object 'put' at b6c0ae10>**
>>> q.get()
**<generator object 'get' at b6c0afa0>**
>>>

如您所见, put 和 get 函数没有返回文档所述的预期值。知道问题可能是什么吗?补充说明:我期待通过调用 get() 方法来取回“Item1”。我是 python 新手,我不知道如何处理生成器。我是否需要做其他事情才能获得放入队列中的“Item1”?

4

0 回答 0