5 ms·
Reading the Usenix paper on SFIO, I don't see much of a resemblance, beyond what you'd expect to find between stream abstractions in general. The really cool th
by psykotic 15y ago
Reading the Usenix paper on SFIO, I don't see much of a resemblance, beyond what you'd expect to find between stream abstractions in general. The really cool thing about Fabian's streams is that the producer (and ultimately the dynamic structure of the underlying data) dictates how the stream is buffered, with little to no inconvenience to the consumer. SFIO's direct stream buffer access with sfreserve() is more like a traditional stream abstraction that you'd find in Java. It's true that sfreserve() has the producer reserve the memory, which means you can eliminate some memory copying when you're stacking streams, but the consumer is still dictating the size of the buffer.