Man page - funlockfile(3)

Packages contains this manual

Available languages:

en fr es pl ja ru ro

Manual

flockfile

NOMBRE
BIBLIOTECA
SINOPSIS
DESCRIPCIÓN
VALOR DEVUELTO
ERRORES
ATRIBUTOS
ESTÁNDARES
HISTORIAL
VÉASE TAMBIÉN
TRADUCCIÓN

NOMBRE

flockfile, ftrylockfile, funlockfile - bloqueo sobre el objeto FILE de stdio

BIBLIOTECA

Biblioteca Estándar C ( libc , -lc )

SINOPSIS

#include <stdio.h>

void flockfile(FILE * filehandle );
int ftrylockfile(FILE *
filehandle );
void funlockfile(FILE *
filehandle );

Requisitos de Macros de Prueba de Características para glibc (véase feature_test_macros (7)):

A continuación se muestran todas las funciones:
/* Since glibc 2.24: */ _POSIX_C_SOURCE >= 199309L
|| /* glibc <= 2.23: */ _POSIX_C_SOURCE
|| /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE

DESCRIPCIÓN

Las funciones stdio son hilo-seguro. Ésto se consigue asignando a cada objeto FILE una cuenta de bloqueos (lockcount) y (si la cuenta es distinta de cero) un hilo que actúa de propietario. Por cada llamada a la biblioteca, estas funciones esperan hasta que el objeto FILE deje de estar bloqueado por algún otro hilo diferente, después lo bloquean, realizan la petición de E/S solicitada, y desbloquean el objeto de nuevo.

(Nota: este bloqueo no tiene nada que ver con el bloqueo realizadopor funciones como flock (2) y lockf (3).)

Todo ésto es invisible al programador de C, pero puede haber dos razones para querer un control más detallado. Por una parte, una serie de acciones de E/S de un hilo pueden ir juntas, y no deberían ser interrumpidas por la E/S de ningún otro hilo. Por otra parte, la sobrecarga del bloqueo debería evitarse para lograr una mayor eficiencia.

Para este propósito, un hilo puede bloquear explícitamente el objeto FILE , realizar su serie de acciones de E/S, y después desbloquearlo. Ésto impide que otros hilos lo interrumpan. Si la razón para hacer esto es lograr una mayor eficiencia, se debe realizar la E/S con las versiones no-bloqueantes de las funciones stdio: con getc_unlocked (3) y putc_unlocked (3) en lugar de getc (3) y putc (3).

La función flockfile () espera a que *filehandle deje de estar bloqueado por otro hilo, hace al hilo actual propietario de *filehandle , e incrementa la cuenta de bloqueos.

La función funlockfile () decrementa la cuenta de bloqueos.

La función ftrylockfile () es una versión no-bloqueante de flockfile (). No hace nada en el caso de que otro hilo sea el propietario de *filehandle , en otro caso obtiene la propiedad e incrementa la cuenta de bloqueos.

VALOR DEVUELTO

La función ftrylockfile () devuelve cero cuando tiene éxito (obtuvo el bloqueo), y un valor distinto de cero en caso de fallo.

ERRORES

Ninguno.

ATRIBUTOS

Para obtener una explicación de los términos usados en esta sección, véase attributes (7).

Image grohtml-3962500-1.png

ESTÁNDARES

POSIX.1-2008.

HISTORIAL

POSIX.1-2001.

Estas funciones están disponibles cuando _POSIX_THREAD_SAFE_FUNCTIONS está definida.

VÉASE TAMBIÉN

unlocked_stdio (3)

TRADUCCIÓN

La traducción al español de esta página del manual fue creada por Miguel Pérez Ibars <mpi79470@alu.um.es>

Esta traducción es documentación libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.

Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org .