New submission from Yury Selivanov:

> Maybe it's possible to give an interpretation to awaiting on a threaded
> Future? __await__ could return a new asyncio Future, and add a completion
> callback to the original Future that makes the asyncio Future ready and
> transfers the result/exception. This would have to use
> loop.call_soon_threadsafe() to transfer control from the exector thread to
> the thread where the loop is running.

It didn't occur to me that we can implement __await__ on concurrent.Future to 
integrate it *with* asyncio.  I guess it makes sense (although we don't have 
this kind of integration in 3.4 with 'yield from')

> The only thing I don't know is whether it's possible for __await__ to
> return a Future.

It is -- we just have to return "iter(asyncio.Future())"

Please see the attached patch -- it needs some more tuning, but it demonstrates 
that the integration is possible.

----------
keywords: +patch
Added file: http://bugs.python.org/file39620/concurrent.patch

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue24383>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to