Seit einigen Tagen beschäftige ich mich mit Python3 und habe große Schwierigkeiten mit dem "Yield from" statement in Verbindung mit dem neuen Asyncio Modul. Ich denke es ist eher ein Verständnisproblem, insofern hoffe ich, dass mir jemand einmal den Weg weisen könnte. Habe zwar einiges gelesen drüber, aber so richtig durch blick ich da momentan leider nicht.
Also, angenommen ich habe eine coroutine
Code: Alles auswählen
@asyncio.coroutine
def create_server(conf):
#erzeugt ein serverobject und startet den server
pass
Code: Alles auswählen
@asyncio.coroutine
def test_connect(conf):
srv = yield from server.create_server(_sconf, None, None)
Code: Alles auswählen
loop = asyncio.get_event_loop()
loop.run_until_complete(test_connect(cfg))
loop.close()
Code: Alles auswählen
class my_server:
def __init__(self):
self.__server = None
self.__config = None
@asyncio.coroutine
def _get_server(self):
server = yield from server.create_server(self._config, None, None)
return "server"
def start(self, yaml_cfg_file):
self.__server = yield from self._get_server()
Code: Alles auswählen
m = my_server()
m.start()
Grüsse,
Bugs