Questo è _run_once() Help on method _run_once in module asyncio.base_events:
_run_once() method of asyncio.windows_events._WindowsSelectorEventLoop instance Run one full iteration of the event loop. This calls all currently ready callbacks, polls for I/O, schedules the resulting callbacks, and finally schedules 'call_later' callbacks. Girando su i vari forum che parlano dell'argomento ho letto che era una soluzione l'ho provata e funziona. Per il client ho usato una classe che eredita da asyncio.protocol, all'interno della quale c'è una funzione predefinita connection_lost(), ed è li che fermo il loop con loop.stop() questo è il main dello script if __name__ == '__main__': while True: try: host ='localhost' port = 8442 username = 'python_tcp_client\n' loop = asyncio.get_event_loop() loop.run_until_complete(tcp_reconnect(username, loop, host, port)) except KeyboardInterrupt: break except Exception as e: print(e) finally: for task in asyncio.Task._all_tasks: task.cancel() loop._run_once() loop.close() Senza questa riga " except Exception as e: " il programma non si riavviava ma si fermava per l'eccezione ""Event loop stopped before Future completed." in questo modo tramite la print() la evidenzio ma tutto prosegue. 2017-11-08 23:35 GMT+01:00 Christian Barra <barrac...@gmail.com>: > > > > On 8 Nov 2017, at 19:09, Vinny Mautone <vinny74...@gmail.com> wrote: > > > > Per i task sono riuscito a risolvere con queste tre righe > > > > for task in asyncio.Task._all_tasks: > > task.cancel() > > loop._run_once() > > > > scusate non so come mettere i tag per il codice. > > > > Adesso però devo risolvere questo: > > "Event loop stopped before Future completed.” > > Non ho idea di cosa sia ._run_once() (non mi pare faccia parte delle > public api di asyncio…..). > > L’errore e’ chiaro, hai (probabilmente) una coroutine wrappata in un > future che non hai completato. > > Come lo stoppi il loop? > > Immagino tu abbia un: > > if __name__ == ‘__main__’: > > con qualche cosa sotto, giusto? > > —— > Christian Barra > Python Freelancer // Consultant // Trainer > Board member of the EuroPython Society > www.chrisbarra.xyz > _______________________________________________ > Python mailing list > Python@lists.python.it > https://lists.python.it/mailman/listinfo/python >
_______________________________________________ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python