Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ funlockfile(3S) — DG/UX 5.4R3.00

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

reentrant(3)

flockfile(3S)



flockfile(3S)                  DG/UX 5.4R3.00                  flockfile(3S)


NAME
       flockfile, funlockfile - synchronize stdio file operations for
       reentrant functions

SYNOPSIS
       #include <stdio.h>

       void flockfile(FILE *file);

       void funlockfile(FILE *file);

DESCRIPTION
       flockfile and funlockfile provide for explicit application level
       locking and unlocking of stdio (FILE *) objects.  They may be used by
       a thread to delineate a sequence of I/O statements that are to be
       executed as a unit.

       The flockfile function is used by a thread to advise the
       implementation that it is the current owner of a (FILE *) object.

       The funlockfile function is used to relinquish the ownership granted
       to the thread.  The behavior is undefined if a thread other than the
       current owner calls the funlockfile function.

       Logically, there is a lock count associated with each (FILE *)
       object.  This count is implicitly initialized to zero when the file
       is opened.  The (FILE *) object is unlocked when this count is zero.
       When the count is positive a single thread owns the (FILE *) object.
       Each call to funlockfile decrements the count.

       When the count is non-zero threads not owning the (FILE *) object
       suspend waiting for the count to return to zero.  The thread owning
       the (FILE *) object does not suspend on subsequent calls to
       flockfile.  This allows matching calls to flockfile and funlockfile
       to be nested.


   Considerations for Threads Programming
                    +------------+-----------------------------+
                    |            |                      async- |
                    |function    | reentrant   cancel   cancel |
                    |            |              point    safe  |
                    +------------+-----------------------------+
                    |flockfile   |     Y          N        N   |
                    |funlockfile |     Y          N        N   |
                    +------------+-----------------------------+
       The flockfile and funlockfile functions are only useful in a threaded
       applications.

DIAGNOSTICS
       There are no return values or errors.

SEE ALSO
       getcunlocked(3S), getcharunlocked(3S), and reentrant(3).



Licensed material--property of copyright holder(s)                         1




flockfile(3S)                  DG/UX 5.4R3.00                  flockfile(3S)


STANDARDS
       These functions are not available when using m88kbcs, m88kdguxcoff,
       or m88kocs as the Software Development Environment targets.






















































Licensed material--property of copyright holder(s)                         2


Typewritten Software • bear@typewritten.org • Edmonds, WA 98026