4 ms·
Given the existence of mmap and NFS, arbitrary reads from memory can end up being network calls. I don't think it's possible to make those async without somethi
by twic 4y ago
Given the existence of mmap and NFS, arbitrary reads from memory can end up being network calls. I don't think it's possible to make those async without something like kernel scheduled entities / scheduler activations, which are now a long-forgotten dream.
- mike_hearn 4y agoYep, or any pluggable file system. Operating systems and programming languages evolved on the assumption that it's OK for operations to take arbitrary amounts of time that you can't necessarily know in advance and which may change out from underneath you, with threads being the solution (run stuff in a background thread and keep the user informed on a foreground thread). Trying to make everything async in a single thread will constantly run into papercuts like the network fs scenario because the whole infrastructure just isn't designed for it.