Paul Sokolovsky
4c4a74368a
asyncio: Add basic asyncio stream interface test.
2014-10-11 05:19:50 +03:00
Paul Sokolovsky
2caed7ddef
asyncio: Handle end of stream condition properly.
...
By removing any IO watches for associated file handle. The way it's
implemented tries to preserve OS-like separation between event loop and
tasks. So, stream to finish watching fd for IO also issues syscall,
instead of calling methods on loop instance directly. Calling method on
loop would be more efficient, but will require storing reference to loop
in each stream. And those separation matters...
2014-10-11 05:19:50 +03:00
Paul Sokolovsky
e6ed3ffceb
asyncio: Add basic loop.call_soon() test.
2014-10-11 05:19:50 +03:00
Paul Sokolovsky
ebc6a1faf2
asyncio: Add asyncio.async() dummy factory function.
...
Not Task bloat implemented (so far?), so just identity function for CPython
compatibility.
2014-10-11 05:19:50 +03:00
Paul Sokolovsky
395e2ecee6
asyncio: Add remove_reader()/remove_writer().
2014-10-11 05:19:50 +03:00
Paul Sokolovsky
dddf237fb6
asyncio: Use logging and errno modules.
2014-10-11 05:19:50 +03:00
Paul Sokolovsky
40af791abf
asyncio: Add dumb debug output.
2014-10-11 05:19:50 +03:00
Paul Sokolovsky
0762929bd3
asyncio: Start adding asyncio stream interface.
2014-10-11 05:19:49 +03:00
Paul Sokolovsky
f9fd9ddd42
asyncio: Support read/write syscalls, and route vals both ways between coros.
2014-10-11 05:19:49 +03:00
Paul Sokolovsky
b8f41198de
asyncio: EpollEventLoop.wait(): support infinite wait.
2014-10-11 05:19:49 +03:00
Paul Sokolovsky
dbb8857e15
asyncio: Make run_forever() actually run forever.
2014-10-11 05:19:49 +03:00
Paul Sokolovsky
7b5780bc66
asyncio: Recover eventloop's ability to work with callbacks.
...
Actually, coroutine support for call_soon() is a hack, in big asyncio coroutine
should be wrapped in Task object.
2014-10-11 05:19:49 +03:00
Paul Sokolovsky
a80cf93d4a
asyncio: Implement subclass implementing filedes watching interface.
2014-10-11 05:19:49 +03:00
Paul Sokolovsky
fb41c0e2e3
asyncio: Initial prototype implementation.
2014-10-11 05:19:49 +03:00