News for hackers. Stuff that matters.
Re:The Various Kinds of IO – Blocking, Non-Blocking, Multipl... by RonInDune on Sunday May 06, 2018 @11:08PM (#17010131)
Where is vectored I/O used in practice? I'd think the requirement of using multiple buffers for scatter/gather is not very efficient...
Re:The Various Kinds of IO – Blocking, Non-Blocking, Multipl... by ramchip on Monday May 07, 2018 @08:52AM (#17012294)
Erlang iolists are an example. It means you can generate HTML from templates as a deeply nested list of strings, and write that to a socket efficiently, without concatenating the strings.
Re:The Various Kinds of IO – Blocking, Non-Blocking, Multipl... by zAy0LfpBZLC8mAC on Monday May 07, 2018 @01:02AM (#17010499)
The point isn't the requirement, the point is the possibility. You can supply a vector with just one element if you like. But if the data is already in multiple buffers, you avoid either a copy or the overhead of additional syscalls. Typical use cases are when you have headers and payload of some protocol in different buffers, possibly of multiple layers of protocol headers.