Domanda

Supponendo, che ho una classe del genere:

class MyClass:
    def __init__(self):
        run_some_long_time_function()
.

Come posso creare molti istanze di questa classe in parallelo usando Asyncio in Python 3.4.1?

È stato utile?

Soluzione

Il ciclo di eventi Asyncio è single filettato, quindi nulla in esecuzione sul ciclo dell'evento verrà eseguito in parallelo.Puoi comunque generare un filo e attendere che finisca.L'esecutore predefinito dovrebbe creare un thread per te:

loop = asyncio.get_event_loop()

asyncio.async(loop.run_in_executor(None, lambda: MyClass()))
asyncio.async(loop.run_in_executor(None, lambda: MyClass()))
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top