I have a Linux-specific library that can give me a raw OS file handle (as a
c_int) that can be used in a call to the Linix
poll() family of functions to indicate when you can read or write a buffer without blocking.
Is there an easy way to wrap a file handle into an async-stream without relying on a specific runtime like Tokio or async-std? Meaning: how might I wake up the task if it's not ready on an initial poll?
For background this is using the Linux Industrial I/O subsystem for analog I/O. The file handle is not used for doing the subsequent read() or write(), so it doesn't map to a
File type operation. The file handle is just a "ready" signal. When ready you need to call
refill() on an opaque type to read, or
push() on the type to write.
As always, thanks for the help!