Ich scheinen die Regeln von dataReceived
und inlineCallbacks
falsch zu interpretieren.inlineCallbacks für eine Protocol.dataReceived in Twisted
Genauer gesagt, wenn ich dies tun:
def dataReceived(self, data):
self.transport.write('ok')
mein Protokoll sendet die Daten wirklich, aber wenn ich dies tun:
@defer.inlineCallbacks
def dataReceived(self, data):
a = yield True # this stands for some adbapi call actually
self.transport.write('ok')
ich nichts empfangen, dann Verbindung schließt gerade. Auch der defer.returnValue hilft hier nicht, Verhalten ist nur ähnlich.
Bitte erklären. Diese
Ich sah nur Ihre Frage im IRC. Wie können Sie hier etwas mehr Einblick in Ihren Code geben? Vielleicht eine einfache Anwendung, die Ähnlichkeit mit Ihrem tatsächlichen Code hat. Wir können Ihnen auf diese Weise bessere Hilfe geben. –