Domande taggate «python-asyncio»

3
Asyncio.gather vs asyncio.wait
asyncio.gathere asyncio.waitsembrano avere usi simili: ho un sacco di cose asincrone che voglio eseguire / attendere (non necessariamente aspettando che uno finisca prima che inizi il successivo). Usano una sintassi diversa e differiscono in alcuni dettagli, ma mi sembra molto poco pitonico avere 2 funzioni che hanno una così grande …

4
Come funziona effettivamente asyncio?
Questa domanda è motivata da un'altra mia domanda: come aspettare in cdef? Ci sono tonnellate di articoli e post di blog sul web asyncio, ma sono tutti molto superficiali. Non sono riuscito a trovare alcuna informazione su come asyncioè effettivamente implementato e cosa rende I / O asincrono. Stavo cercando …

4
"Spara e dimentica" Python async / await
A volte è necessario eseguire un'operazione asincrona non critica, ma non voglio aspettare che venga completata. Nell'implementazione coroutine di Tornado è possibile "sparare e dimenticare" una funzione asincrona semplicemente omettendo la yieldparola chiave. Ho cercato di capire come "sparare e dimenticare" con la nuova sintassi async/ awaitrilasciata in Python 3.5. …


4
Differenza tra coroutine e future / task in Python 3.5?
Diciamo di avere una funzione fittizia: async def foo(arg): result = await some_remote_call(arg) return result.upper() Qual è la differenza tra: import asyncio coros = [] for i in range(5): coros.append(foo(i)) loop = asyncio.get_event_loop() loop.run_until_complete(asyncio.wait(coros)) E: import asyncio futures = [] for i in range(5): futures.append(asyncio.ensure_future(foo(i))) loop = asyncio.get_event_loop() loop.run_until_complete(asyncio.wait(futures)) Nota …

4
asyncio.ensure_future contro BaseEventLoop.create_task contro semplice coroutine?
Ho visto diversi tutorial di base su Python 3.5 su asyncio che eseguono la stessa operazione in vari gusti. In questo codice: import asyncio async def doit(i): print("Start %d" % i) await asyncio.sleep(3) print("End %d" % i) return i if __name__ == '__main__': loop = asyncio.get_event_loop() #futures = [asyncio.ensure_future(doit(i), loop=loop) …

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.