等待多个websocket对象的正确方法是什么?

时间:2018-10-17 02:43:22

标签: python websocket async-await

以下方法可行,但不能很好地扩展到N个对象,这是我的下一步。

    async with websockets.connect('ws://192.168.0.176:81') as websocket1: 
        async with websockets.connect('ws://192.168.0.177:81') as websocket2:            
            async with websockets.connect('ws://192.168.0.194:81') as websocket3: 
                datatosend = GetRainbowStripeData(basecolor)
                await websocket1.send(header1+header2+header3+header4+datatosend)
                await websocket2.send(header1+header2+header3+header4+datatosend)
                await websocket3.send(header1+header2+header3+header4+datatosend)

理想情况下,我想要的是能够打开与N个端点(其中N约为20)中的每个端点的连接,然后向每个端点发送数据,以在发生异常时捕获并管理异常。

但显然,逐步嵌套20个“异步”并不是热门单子!

解决这个问题的整洁/优雅方法是什么?

0 个答案:

没有答案