 |
Index for Section 3 |
|
 |
Alphabetical listing for F |
|
 |
Bottom of page |
|
flockfile(3)
NAME
flockfile, ftrylockfilefunlockfile, stdio - locking functions
SYNOPSIS
#include <stdio.h>
void flockfile(
FILE * file );
int ftrylockfile
FILE * file );
void funlockfile
FILE * file );
LIBRARY
Standard C Library (libc)
STANDARDS
Interfaces documented on this reference page conform to industry standards
as follows:
flockfile, funlockfile: POSIX.1c, XSH5.0
ftrylockfile: XSH5.0
Refer to the standards(5) reference page for more information about
industry standards and associated tags.
PARAMETERS
file
Specifies the stream to be locked.
DESCRIPTION
The flockfile(), ftrylockfile, and funlockfile functions provide for
explicit application-level locking of stdio (FILE*) objects. These
functions can be used by a thread to delineate a sequence of I/O statements
that are to be executed as a unit.
The flockfile() function locks a stdio stream so that a thread can have
exclusive use of that stream for multiple I/O operations. Use the
flockfile() function for a thread that wishes to ensure that the output of
several printf() functions, for example, is not garbled by another thread
also trying to use printf().
The ftrylockfile() function is used by a thread to acquire ownership of a
stdio (FILE*) object if the object is available. The ftrylockfile()
function is a non-blocking version of flockfile().
The funlockfile() function unlocks a stdio stream, causing the thread that
had been holding the lock to relinquish exclusive use of the stream.
The behavior of the flockfile() and funlockfile() functions is unspecified
if the file parameter does not point to a valid FILE structure. The
behavior of funlockfile() is also unspecified if a thread other than the
current owner calls funlockfile().
Matching flockfile() and funlockfile() calls can be nested. If the stream
has been locked recursively, it will remain locked until the last matching
funlockfile() is called.
RETURN VALUE
None for flockfile() and funlockfile(). The ftrylockfile() function
returns zero for success and non-zero to indicate that the lock cannot be
acquired.
SEE ALSO
Functions: getc_unlocked(3), putc_unlocked(3)
 |
Index for Section 3 |
|
 |
Alphabetical listing for F |
|
 |
Top of page |
|