如何使用asyncio同时运行2个循环

时间:2017-06-04 21:24:31

标签: python loops python-asyncio

我对asyncio很陌生,所以很多事情仍然离我的理解太远了,无论如何。

我有一个主要的while循环,基本上只是使用PyGame在屏幕上绘制一些东西,我想做的是异步运行另一个while循环,这会不断更新一些要渲染的数据。 / p>

async def update(reader, writer):
    while True:
        json_data = await reader.read(1000)
        self.json_data = json.loads(json_data)

def run(self):
    while True:
        self.draw()

1 个答案:

答案 0 :(得分:0)

尝试线程化:

import threading

async def update(reader, writer):
    while True:
        json_data = await,reader.read(1000)
        self.json_data = json.loads(json_data)

def run(self):
    while True:
        self.draw()

t = threading.Thread(target=update,args=(reader,writer))
t2 = threading.Thread(target=run,args=(self))
t.start()
t2.start()

线程将同时运行两个进程!