Safe Haskell | None |
---|---|
Language | Haskell2010 |
- sendfile :: Fd -> ByteString -> FileRange -> IO () -> IO ()
- sendfileFd :: Fd -> Fd -> FileRange -> IO () -> IO ()
- data FileRange
- = EntireFile
- | PartOfFile { }
Documentation
sendfile :: Fd -> ByteString -> FileRange -> IO () -> IO () Source #
Simple binding for sendfile() of Linux. Used system calls:
- EntireFile -- open(), stat(), sendfile(), and close()
- PartOfFile -- open(), sendfile(), and close()
If the size of the file is unknown when sending the entire file, specifying PartOfFile is much faster.
The fourth action argument is called when a file is sent as chunks. Chucking is inevitable if the socket is non-blocking (this is the default) and the file is large. The action is called after a chunk is sent and bofore waiting the socket to be ready for writing.
sendfileFd :: Fd -> Fd -> FileRange -> IO () -> IO () Source #
Simple binding for sendfile() of Linux. Used system calls:
- EntireFile -- stat() and sendfile()
- PartOfFile -- sendfile()
If the size of the file is unknown when sending the entire file, specifying PartOfFile is much faster.
The fourth action argument is called when a file is sent as chunks. Chucking is inevitable if the socket is non-blocking (this is the default) and the file is large. The action is called after a chunk is sent and bofore waiting the socket to be ready for writing.
File range for sendfile
.