Section: Manual del Programador de Linux (2)
Updated: 1 diciembre 1998
Index Return to Main
Contents
sendfile - transfiere datos entre descriptores de fichero
ssize_t sendfile(int out_fd, int in_fd, off_t *offset, size_t count)
Esta llamada copia datos entre un descriptor de fichero y otro. Cualquiera de los dos descriptores de fichero o los dos pueden referirse a un conector (socket). in_fd debe ser un descriptor de fichero abierto para lectura y out_fd debe ser un descriptor abierto para escritura. offset es un puntero a una variable que contiene la posición del puntero del fichero de entrada desde la que sendfile(2) empezará a leer datos. Cuando sendfile regrese, a esta variable se le asignará la posición del byte siguiente al último byte que se ha leído. count es la cantidad de bytes a copiar entre los descriptores de fichero.
Sendfile no modifica el puntero de fichero actual de in_fd, pero sí lo hace para out_fd.
Si planea usar sendfile para enviar ficheros a un conector TCP, pero necesita enviar algunos datos de cabecera delante de los contenidos del fichero, por favor vea la opción TCP_CORK en tcp(7) para minimizar el número de paquetes y ajustar el rendimiento.
Si la transferencia ha tenido éxito, se devuelve el número de bytes escritos en out_fd. En caso de error, se devuelve -1 y se asigna a errno un valor apropiado.
es una nueva característica de la versión 2.2 de Linux.
Otros Unix normalmente implementan sendfile con otras semánticas y prototipos. No debería usarse en programas transportables.
(2), open(2)
This document was created by man2html, using
the manual pages.
Time: 06:16:20 GMT, January 22, 2005