OSDN Git Service

Retire LDP man-pages repository
[linuxjm/LDP_man-pages.git] / original / man3 / flockfile.3
diff --git a/original/man3/flockfile.3 b/original/man3/flockfile.3
deleted file mode 100644 (file)
index 81bc777..0000000
+++ /dev/null
@@ -1,151 +0,0 @@
-.\" Copyright (C) 2001 Andries Brouwer <aeb@cwi.nl>.
-.\"
-.\" %%%LICENSE_START(VERBATIM)
-.\" Permission is granted to make and distribute verbatim copies of this
-.\" manual provided the copyright notice and this permission notice are
-.\" preserved on all copies.
-.\"
-.\" Permission is granted to copy and distribute modified versions of this
-.\" manual under the conditions for verbatim copying, provided that the
-.\" entire resulting derived work is distributed under the terms of a
-.\" permission notice identical to this one.
-.\"
-.\" Since the Linux kernel and libraries are constantly changing, this
-.\" manual page may be incorrect or out-of-date.  The author(s) assume no
-.\" responsibility for errors or omissions, or for damages resulting from
-.\" the use of the information contained herein.  The author(s) may not
-.\" have taken the same level of care in the production of this manual,
-.\" which is licensed free of charge, as they might when working
-.\" professionally.
-.\"
-.\" Formatted or processed versions of this manual, if unaccompanied by
-.\" the source, must acknowledge the copyright and authors of this work.
-.\" %%%LICENSE_END
-.\"
-.TH FLOCKFILE 3  2014-08-19 "" "Linux Programmer's Manual"
-.SH NAME
-flockfile, ftrylockfile, funlockfile \- lock FILE for stdio
-.SH SYNOPSIS
-.nf
-.B #include <stdio.h>
-.sp
-.BI "void flockfile(FILE *" filehandle );
-.br
-.BI "int ftrylockfile(FILE *" filehandle );
-.br
-.BI "void funlockfile(FILE *" filehandle );
-.fi
-.sp
-.in -4n
-Feature Test Macro Requirements for glibc (see
-.BR feature_test_macros (7)):
-.in
-.ad l
-.sp
-All functions shown above:
-.RS 4
-_POSIX_C_SOURCE\ >=\ 1 || _XOPEN_SOURCE || _BSD_SOURCE ||
-_SVID_SOURCE || _POSIX_SOURCE
-.RE
-.ad b
-.SH DESCRIPTION
-The stdio functions are thread-safe.
-This is achieved by assigning
-to each
-.I FILE
-object a lockcount and (if the lockcount is nonzero)
-an owning thread.
-For each library call, these functions wait until the
-.I FILE
-object
-is no longer locked by a different thread, then lock it, do the
-requested I/O, and unlock the object again.
-.LP
-(Note: this locking has nothing to do with the file locking done
-by functions like
-.BR flock (2)
-and
-.BR lockf (3).)
-.LP
-All this is invisible to the C-programmer, but there may be two
-reasons to wish for more detailed control.
-On the one hand, maybe
-a series of I/O actions by one thread belongs together, and should
-not be interrupted by the I/O of some other thread.
-On the other hand, maybe the locking overhead should be avoided
-for greater efficiency.
-.LP
-To this end, a thread can explicitly lock the
-.I FILE
-object,
-then do its series of I/O actions, then unlock.
-This prevents
-other threads from coming in between.
-If the reason for doing
-this was to achieve greater efficiency, one does the I/O with
-the nonlocking versions of the stdio functions: with
-.BR getc_unlocked (3)
-and
-.BR putc_unlocked (3)
-instead of
-.BR getc (3)
-and
-.BR putc (3).
-.LP
-The
-.BR flockfile ()
-function waits for
-.I *filehandle
-to be
-no longer locked by a different thread, then makes the
-current thread owner of
-.IR *filehandle ,
-and increments
-the lockcount.
-.LP
-The
-.BR funlockfile ()
-function decrements the lock count.
-.LP
-The
-.BR ftrylockfile ()
-function is a nonblocking version
-of
-.BR flockfile ().
-It does nothing in case some other thread
-owns
-.IR *filehandle ,
-and it obtains ownership and increments
-the lockcount otherwise.
-.SH RETURN VALUE
-The
-.BR ftrylockfile ()
-function returns zero for success
-(the lock was obtained), and nonzero for failure.
-.SH ERRORS
-None.
-.SH ATTRIBUTES
-.SS Multithreading (see pthreads(7))
-The
-.BR flockfile (),
-.BR ftrylockfile (),
-and
-.BR funlockfile ()
-functions are thread-safe.
-.SH CONFORMING TO
-POSIX.1-2001.
-.SH AVAILABILITY
-These functions are available when
-.B _POSIX_THREAD_SAFE_FUNCTIONS
-is defined.
-.SH SEE ALSO
-.BR unlocked_stdio (3)
-.SH COLOPHON
-This page is part of release 3.79 of the Linux
-.I man-pages
-project.
-A description of the project,
-information about reporting bugs,
-and the latest version of this page,
-can be found at
-\%http://www.kernel.org/doc/man\-pages/.