Python3 Asyncio队列-是否在后台排队?

时间:2018-10-17 12:01:46

标签: python-3.x queue python-asyncio

嗨,我对asyncio队列有疑问。我有一个带有TCP连接的异步“服务器”,我想做一些类似队列清理器的事情。

loop = asyncio.get_event_loop()
coro = asyncio.start_server(server, '127.0.0.1', 8888, loop=loop)
server = loop.run_until_complete(coro)



print('Serving on {}'.format(server.sockets[0].getsockname()))

while True:
    loop.run_until_complete(main())

并且main()是

async def main():
    if queue.empty() == True:
        pass
    while queue.empty() != True:
        item = await queue.get()
        print(item)
        print("queue items: ")
        print(queue.qsize())

但是我不认为这是从队列执行任务的最佳方法。我想制作第二个脚本,该脚本只在队列中考虑。有什么方法可以从外部连接到我的服务器队列并进行相应的处理?

现在看起来像: 客户端->服务器=>接收任务,并将其添加到队列->使循环干净。它不是异步的,因为从逻辑上讲,我在队列中的思考永远不会超过1。

我要:

客户端->服务器=>接收任务<=外部清洁任务

0 个答案:

没有答案