NOM

__fbufsize, __flbf, __fpending, __fpurge, __freadable, __freading, __fsetlocking, __fwritable, __fwriting, _flushlbf - Interfaces pour la structure FILE (stdio)

BIBLIOTHÈQUE

Bibliothèque C standard ( libc, -lc)

SYNOPSIS

#include <stdio.h>
#include <stdio_ext.h>
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 accès portables aux composants internes de la structure FILE. La glibc a également implémenté ces routines.
La fonction __fbufsize() renvoie la taille du tampon actuellement utilisé par le flux considéré.
La fonction __fpending() renvoie le nombre d'octets du tampon de sortie. Pour les flux orientés caractères larges, l'unité est le caractère large. Cette fonction n'est pas définie pour les tampons en mode lecture, ou bien ouverts en lecture seule.
La fonction __flbf() renvoie une valeur différente de zéro si le flux a un tampon de ligne, sinon, elle renvoie zéro.
La fonction __freadable() renvoie une valeur différente de zéro si le flux peut être lu, sinon, elle renvoie zéro.
La fonction __fwritable() renvoie une valeur différente de zéro si l'on peut écrire dans le flux, sinon, elle renvoie zéro.
La fonction __freading() renvoie une valeur différente de zéro si le flux est en lecture seule, ou bien si la dernière opération sur le flux était une lecture, sinon, elle renvoie zéro.
La fonction __fwriting() renvoie une valeur différente de zéro si le flux est en écriture seule, ou bien si la dernière opération sur le flux était une écriture, sinon, elle renvoie zéro.
La fonction __fsetlocking() peut être utilisée afin de sélectionner le type de verrouillage souhaité sur le flux. Elle renvoie le type actuel. Le paramètre type peut prendre les trois valeurs suivantes :
FSETLOCKING_INTERNAL
réalise un verrouillage implicite sur toutes les opérations affectant le flux considéré (à l'exception de fonctions nommées *_unlocked). Il s'agit du comportement par défaut.
FSETLOCKING_BYCALLER
l'appelant prendra en charge le verrouillage (en utilisant potentiellement flockfile(3) dans le cas où il y a plusieurs threads), et les routines d'entrées-sorties standard n'effectueront plus aucun verrouillage jusqu'à ce que l'état soit rétabli à FSETLOCKING_INTERNAL.
FSETLOCKING_QUERY
ne change pas le type de verrouillage (le renvoie seulement).
La fonction _flushlbf() vide tous les flux à tampon de ligne (sans doute de sorte que la sortie d'un terminal soit écrite, par exemple avant de lire une entrée sur le clavier).
La fonction __fpurge() permet de se débarrasser du contenu du tampon de flux.

ATTRIBUTS

Pour une explication des termes utilisés dans cette section, consulter attributes(7).
Interface Attribut Valeur
__fbufsize(), __fpending(), __fpurge(), __fsetlocking() Sécurité des threads MT-Safe race:stream
__flbf(), __freadable(), __freading(), __fwritable(), __fwriting(), _flushlbf() Sécurité des threads MT-Safe
 

VOIR AUSSI

flockfile(3), fpurge(3)

TRADUCTION

La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <[email protected]>, Thierry Vignaud <[email protected]>, François Micaux, Alain Portal <[email protected]>, Jean-Philippe Guérard <[email protected]>, Jean-Luc Coulon (f5ibh) <[email protected]>, Julien Cristau <[email protected]>, Thomas Huriaux <[email protected]>, Nicolas François <[email protected]>, Florentin Duneau <[email protected]>, Simon Paillard <[email protected]>, Denis Barbier <[email protected]>, David Prévot <[email protected]> et Frédéric Hantrais <[email protected]>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à [email protected]

Recommended readings

Pages related to __flbf you should read also: