-
Notifications
You must be signed in to change notification settings - Fork 37
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
conn.exportObject() should return deferred object instead of None #20
Comments
What makes you think the function has the potential to block? All network Tom On Thu, Nov 20, 2014 at 1:46 PM, Коренберг Марк [email protected]
|
Yes, you are right.Twsited just buffer that data in its head, and send it when possible. But we should wait when this write aactually complete in order to execute next actions. I'm coming from Tornado world. Tornado's streams have same Real case: |
I could see some value to a .flush() method like the one you describe but, It's a nuisance but the only way to really be sure the object has been Tom On Thu, Nov 20, 2014 at 2:59 PM, Коренберг Марк [email protected]
|
I have discovered, that DBUS does not acknowledge that operation. Very sad. BUT. while experimenting I have found, that if I call I did not check, but seems we have race-condtition when someone wants to call some remote function without waiting for the result ( |
It's definitely a race condition. That workflow isn't really supported by Instead what you probably want to do is:
That should cleanly shut down the connection to the dbus daemon after On Fri, Nov 21, 2014 at 5:10 PM, Коренберг Марк [email protected]
|
Yes, thanks, that works! But still no clean solution. |
Since this method calls
conn.sendMessage()
internally, this method may block.Moreover. Library should expect that socket write function may (!) block! So, whole chain of calls should implement deffered semantics.
The text was updated successfully, but these errors were encountered: