remove claim that other IO modes aren't too hard

Since writing that text, I've made some design decisions that complicate
this:

* dropping a Session uses tokio::runtime::Handle::spawn
* keepalives are tracked with a tokio::time::Sleep
* I support UDP (so multiple sockets per session), which means the
  blocking API would have to use extra threads or async IO behind the
  scenes.

I might make decisions that complicate it further, e.g. having a tokio
task for each socket rather than polling them all in Session::poll_next.

It's of course still *possible* to support async-std and/or a blocking
API if there's demand. It'd require more duplicate logic/APIs now, so
I'm not excited about the possibility.
This commit is contained in:
Scott Lamb 2022-01-25 16:11:31 -08:00
parent d50e7481ee
commit 1145ed053e

View File

@ -27,8 +27,7 @@ Progress:
* [ ] server support
* I/O modes
* [x] async with tokio
* [ ] async-std. (Most of the crate's code is independent of the async
library, so I don't expect this would be too hard to add.)
* [ ] async-std
* [ ] synchronous with std only
* codec depacketization
* [x] video: H.264