stdio_ext(3) Library Functions Manual stdio_ext(3) NOM __fbufsize, __flbf, __fpending, __fpurge, __freadable, __freading, __fsetlocking, __fwritable, __fwriting, _flushlbf - Interfaces pour la structure FILE (stdio) BIBLIOTHEQUE Bibliotheque C standard (libc, -lc) SYNOPSIS #include #include size_t __fbufsize(FILE *flux); size_t __fpending(FILE *flux); int __flbf(FILE *flux); int __freadable(FILE *flux); int __fwritable(FILE *flux); int __freading(FILE *flux); int __fwriting(FILE *flux); int __fsetlocking(FILE *flux, int type); void _flushlbf(void); void __fpurge(FILE *flux); DESCRIPTION Solaris a introduit des routines afin de permettre des acces portables aux composants internes de la structure FILE. La glibc a egalement implemente ces routines. La fonction __fbufsize() renvoie la taille du tampon actuellement utilise par le flux considere. La fonction __fpending() renvoie le nombre d'octets du tampon de sortie. Pour les flux orientes caracteres larges, l'unite est le caractere large. Cette fonction n'est pas definie pour les tampons en mode lecture, ou bien ouverts en lecture seule. La fonction __flbf() renvoie une valeur differente de zero si le flux a un tampon de ligne, sinon, elle renvoie zero. La fonction __freadable() renvoie une valeur differente de zero si le flux peut etre lu, sinon, elle renvoie zero. La fonction __fwritable() renvoie une valeur differente de zero si l'on peut ecrire dans le flux, sinon, elle renvoie zero. La fonction __freading() renvoie une valeur differente de zero si le flux est en lecture seule, ou bien si la derniere operation sur le flux etait une lecture, sinon, elle renvoie zero. La fonction __fwriting() renvoie une valeur differente de zero si le flux est en ecriture seule, ou bien si la derniere operation sur le flux etait une ecriture, sinon, elle renvoie zero. La fonction __fsetlocking() peut etre utilisee afin de selectionner le type de verrouillage souhaite sur le flux. Elle renvoie le type actuel. Le parametre type peut prendre les trois valeurs suivantes : FSETLOCKING_INTERNAL realise un verrouillage implicite sur toutes les operations affectant le flux considere (a l'exception de fonctions nommees *_unlocked). Il s'agit du comportement par defaut. FSETLOCKING_BYCALLER l'appelant prendra en charge le verrouillage (en utilisant potentiellement flockfile(3) dans le cas ou il y a plusieurs threads), et les routines d'entrees-sorties standard n'effectueront plus aucun verrouillage jusqu'a ce que l'etat soit retabli a FSETLOCKING_INTERNAL. FSETLOCKING_QUERY ne change pas le type de verrouillage (le renvoie seulement). La fonction _flushlbf() vide tous les flux a tampon de ligne (sans doute de sorte que la sortie d'un terminal soit ecrite, par exemple avant de lire une entree sur le clavier). La fonction __fpurge() permet de se debarrasser du contenu du tampon de flux. ATTRIBUTS Pour une explication des termes utilises dans cette section, consulter attributes(7). +---------------------+--------------------------+---------------------+ |Interface | Attribut | Valeur | +---------------------+--------------------------+---------------------+ |__fbufsize(), | Securite des threads | MT-Safe race:stream | |__fpending(), | | | |__fpurge(), | | | |__fsetlocking() | | | +---------------------+--------------------------+---------------------+ |__flbf(), | Securite des threads | MT-Safe | |__freadable(), | | | |__freading(), | | | |__fwritable(), | | | |__fwriting(), | | | |_flushlbf() | | | +---------------------+--------------------------+---------------------+ VOIR AUSSI flockfile(3), fpurge(3) TRADUCTION La traduction francaise de cette page de manuel a ete creee par Christophe Blaess , Stephan Rafin , Thierry Vignaud , Francois Micaux, Alain Portal , Jean-Philippe Guerard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas Francois , Florentin Duneau , Simon Paillard , Denis Barbier , David Prevot et Frederic Hantrais Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a . Pages du manuel de Linux 6.06 31 octobre 2023 stdio_ext(3)