[Actualités]
Wi-Fi 7 et bande 6 GHz : l’Europe est à la traîne
[Actualités]
Spotify lance les notes de playlist
[Actualités]
Microsoft supprime la fonction =COPILOT d'Excel : un an de service, puis la retr...
[Actualités]
YouTube modifie son système de comptage des vues à partir du 24 août
[Actualités]
ChatGPT s'intègre à Google Drive : vous pouvez désormais modifier des fichier...
[Actualités]
Panne de Google Home : des millions de foyers paralysés
[Actualités]
La date de lancement de la PS6 reste incertaine
[Actualités]
La dernière mise à jour de Windows 11 provoque des plantages de jeux.
[Actualités]
Un bug fait disparaître les hôtels de Google Maps
[Actualités]
Linux 7.2 est officiellement disponible
[Articles]
Quishing, une alternative au phishing traditionnel - ESET explique comment les e...
[Articles]
D-topia
[Articles]
DragonSword : Awakening
[Articles]
Clockfall
[Articles]
Silence tome 7
[Articles]
Fitness Boxing 3 : Your Personal Trainer - Nintendo Switch 2 Edition
[Articles]
Fitness Boxing 3 : Your Personal Trainer
[Articles]
Space Montaigne
[Articles]
Xenoblade Chronicles 2 : Torna - The Golden Country - Nintendo Switch 2 Edition
[Articles]
Achève-moi tome 4
Se connecter
Se connecter
Inscription
Mot de passe perdu
Connexion
Actualités
Lettre d'information
Proposer une actualité
Archives
Actualités
Articles
Programmation
Press Release
Matériel
Logiciels
Livres
Interviews
Derniers commentaires
Jeux Vidéos
XBox One
XBox 360
Wii U
PSP
PS4
PS3
PC
DS
GameCube
3DS
Forum
Derniers messages
Informatique
Fun
Divers
Logithèque
Blogs
Divers
A Propos
Annonceurs
Contact
Recherche
RSS
Se connecter
Se connecter
Inscription
Mot de passe perdu
Connexion
Editer un article
Titre
Mots Clés
Texte
[size=18] [b]Nom[/b] [/size] sendfile - Transfert de données entre descripteurs de fichiers. [size=18] [b]Résumé[/b] [/size] [b]#include
[/b] [b][i]size_t sendfile(int out_fd , int in_fd , off_t * offset , size_t count );[/i][/b] [size=18] [b]Description[/b] [/size] Cet appel-système copie des données entre un descripteur de fichier et un autre. L'un ou l'autre de ces descripteurs peuvent être une socket (voir plus bas). Le descripteur [i]in_fd[/i] doit être ouvert en lecture, et [i]out_fd[/i] en écriture. Le pointeur [i]offset[/i] doit correspondre à une variable contenant la position dans le fichier d'entrée à partir de laquelle [b]sendfile ()[/b] commencera la lecture. Lorsque la routine se termine, la variable est remplie avec la position de l'octet immédiatement après le dernier octet lu. L'argument [i]count[/i] est le nombre d'octets à copier entre les descripteurs de fichiers. Comme la copie est assurée à l'intérieur du noyau, [b]sendfile ()[/b] ne perd pas de temps à transférer des données entre l'espace noyau et l'espace utilisateur. [size=18] [b]Notes[/b] [/size] L'appel [b]sendfile ()[/b] ne modifie pas la position courante dans le fichier [b]in_fd ,[/b] mais modifie celle de [b]out_fd .[/b] Si vous voulez utiliser [b]senbdfile[/b]() pour envoyer un fichier au travers d'une socket TCP, tout en le précédant de données d'en-tête, voyez l'option [b]TCP_CORK [/b] de [b]tcp (7)[/b] pour minimiser le nombre de paquets, et optimiser les performances. Actuellement, le descripteur depuis lequel les données sont lues ne peut pas être une socket, il doit s'agir d'un fichier supportant les opérations de type mmap(). [size=18] [b]Valeur renvoyée[/b] [/size] Si le transfert a réussi, le nombre d'octets écrits dans [i]out_fd[/i] est renvoyé. Sinon, [b]sendfile[/b]() renvoie -1, et [i]errno[/i] est configuré. [size=18] [b]Erreurs[/b] [/size] [b]EBADF[/b] [table][row][col] [/col][col]Le fichier d'entrée n'est pas ouvert en lecture, ou celui de sortie en écriture.[/col][/row][/table] [b]EINVAL[/b] [table][row][col] [/col][col]Le descripteur est invalide ou verrouillé.[/col][/row][/table] [b]ENOMEM[/b] [table][row][col] [/col][col]Mémoire insuffisante pour lire depuis [b]in_fd .[/b][/col][/row][/table] [b]EIO[/b] [table][row][col] [/col][col]Erreur d'entrée-sortie pendant la lecture depuis [b]in_fd .[/b][/col][/row][/table] [size=18] [b]Versions[/b] [/size] L'appel-système [b]sendfile ()[/b] est une nouveauté de Linux 2.2. Le fichier d'en-tête
est présent depuis la GlibC 2.1. Les autres Unix implémentent [b]sendfile[/b]() avec d'autres sémantiques, et d'autres prototypes. Il ne faut pas l'utiliser dans un programme portable. [size=18] [b]Voir aussi[/b] [/size] [b]socket (2),[/b] [b]open (2)[/b] [size=18] [b]Traduction[/b] [/size] Christophe Blaess, 1996-2003.
Fichier
Newsletter
Recevez les dernières actualités tech directement dans votre boîte mail.
S'inscrire
Forum
-
Derniers messages
Réseaux et Télécom
Edpnet
Bavardages
Séries TV, vous regardez quoi?
Bavardages
Aujourd'hui, je rénove ou je construis ^^
Informations
Besoin d’avis sur l’UX de mon mini-projet web (et plus globalement sur ce qui vous rebute sur un site) ?
Software
problème sur windows 10
Réseaux et Télécom
Problème wifi (POE)
Software
Postfix - Need help
Bavardages
Oh râge oh désespoir !
Programmation
Enregistrement client et envoi mail
Software
SÉCURITÉ MACBOOK
Actualités
-
Archives
Internet
18-08
Wi-Fi 7 et bande 6 GHz : l’Europe est à la traîne
Musique
18-08
Spotify lance les notes de playlist
Microsoft
18-08
Microsoft supprime la fonction =COPILOT d'Excel : un an de service, puis la retraite.
Vidéo
18-08
YouTube modifie son système de comptage des vues à partir du 24 août
Programmation
18-08
ChatGPT s'intègre à Google Drive : vous pouvez désormais modifier des fichiers directement dans le chat.
Ada
CSS
Cobol
CPP
HTML
Fortran
Java
JavaScript
Pascal
Perl
PHP
Python
SQL
VB
XML
Anon URL
DailyMotion
eBay
Flickr
FLV
Google Video
Google Maps
Metacafe
MP3
SeeqPod
Veoh
Yahoo Video
YouTube
6px
8px
10px
12px
14px
16px
18px
Informaticien.be
- © 2002-2026
Akretio
SRL - Generated via
Kelare
Haut de page