HORIZON HASKELLDocslts/ghc-10.0.x77a86622026-10-31Search packagesCtrl K
Theme: |

GHC 10.0.0.20260917 · lts/ghc-10.0.x · 77a8662 · 2026-10-31

Modulesimple-sendfile-0.2.32Haskell2010

System.Linux.Sendfile

Synopsis
valuesendfile :: Fd -> ByteString -> FileRange -> IO () -> IO ()

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 before waiting the socket to be ready for writing.

valuesendfileFd :: Fd -> Fd -> FileRange -> IO () -> IO ()

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 before waiting the socket to be ready for writing.