Posted By: Eric Wong
Date: 2011-05-01 21:19
Summary: io_splice 3.1.0 - IO::Splice.copy_stream improvement
Project: Quack Ruby Projects
The splice family of Linux system calls can transfer data between file descriptors without the need to copy data into userspace. Instead of a userspace buffer, they rely on an ordinary Unix pipe as a kernel-level buffer.
* http://bogomips.org/ruby_io_splice/ * ruby.io.splice@librelist.com />* git://bogomips.org/ruby_io_splice.git
Changes:
IO::Splice.copy_stream no longer modifies the actual file offset of the given source file (if it's a regular file). This follows IO.copy_stream and IO#sendfile semantics, allowing multiple threads/processes to simultaneously stream a single regular file descriptor to multiple sockets/pipes. |
|