:man| Alphabetical   Categories   About us 
 
FLOCKFILE (3) | C library functions | Unix Manual Pages | :man

NAME

flockfile, ftrylockfile, funlockfile - "stdio locking functions"

CONTENTS

Library
Synopsis
Description
Return Values
See Also
Standards

LIBRARY


.Lb libc

SYNOPSIS


.In stdio.h void flockfile "FILE *stream" int ftrylockfile "FILE *stream" void funlockfile "FILE *stream"

DESCRIPTION

These functions provide explicit application-level locking of stdio streams. They can be used to avoid output from multiple threads being interspersed, input being dispersed among multiple readers, and to avoid the overhead of locking the stream for each operation.

The flockfile function acquires an exclusive lock on the specified stream. If another thread has already locked the stream, flockfile will block until the lock is released.

The ftrylockfile function is a non-blocking version of flockfile; if the lock cannot be acquired immediately, ftrylockfile returns non-zero instead of blocking.

The funlockfile function releases the lock on a stream acquired by an earlier call to flockfile or ftrylockfile.

These functions behave as if there is a lock count associated with each stream. Each time flockfile is called on the stream, the count is incremented, and each time funlockfile is called on the stream, the count is decremented. The lock is only actually released when the count reaches zero.

RETURN VALUES

The flockfile and funlockfile functions return no value.

The ftrylockfile function returns zero if the stream was successfully locked, non-zero otherwise.

SEE ALSO

getc_unlocked(3), putc_unlocked(3)

STANDARDS

 
Created by Blin Media, 2008-2013