Visit Our UNIX and Linux User Community

Linux and UNIX Man Pages

Test Your Knowledge in Computers #592
Difficulty: Medium
Suppose we want to sort a huge collection of 1 trillion, 10^12, elements. Doing so with Selection Sort or Insertion Sort would require about n^2 = (10^12)^2 = 10^24 or 1 sextillion comparisons.
True or False?
Linux & Unix Commands - Search Man Pages

flockfile(3) [mojave man page]

FLOCKFILE(3)						   BSD Library Functions Manual 					      FLOCKFILE(3)

NAME
flockfile, ftrylockfile, funlockfile -- stdio locking functions LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#include <stdio.h> void flockfile(FILE *file); int ftrylockfile(FILE *file); void funlockfile(FILE *file); DESCRIPTION
These functions provide explicit application-level locking of stdio FILE objects. 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 object for each operation. The flockfile() function acquires an exclusive lock on the specified object. If another thread has already locked the object, 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 an object acquired by an earlier call to flockfile() or ftrylockfile(). These functions behave as if there is a lock count associated with each object. Each time flockfile() is called on the object, the count is incremented, and each time funlockfile() is called on the object, 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 object was successfully locked, non-zero otherwise. SEE ALSO
getc_unlocked(3), putc_unlocked(3) STANDARDS
The flockfile(), ftrylockfile(), and funlockfile() functions conform to IEEE Std 1003.1-2001 (``POSIX.1''). BSD
January 10, 2003 BSD

Check Out this Related Man Page

FLOCKFILE(3)						   BSD Library Functions Manual 					      FLOCKFILE(3)

NAME
flockfile, ftrylockfile, funlockfile -- stdio locking functions LIBRARY
Standard C Library (libc, -lc) SYNOPSIS
#include <stdio.h> void flockfile(FILE *file); int ftrylockfile(FILE *file); void funlockfile(FILE *file); DESCRIPTION
These functions provide explicit application-level locking of stdio FILE objects. 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 object for each operation. The flockfile() function acquires an exclusive lock on the specified object. If another thread has already locked the object, 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 an object acquired by an earlier call to flockfile() or ftrylockfile(). These functions behave as if there is a lock count associated with each object. Each time flockfile() is called on the object, the count is incremented, and each time funlockfile() is called on the object, 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 object was successfully locked, non-zero otherwise. SEE ALSO
getc_unlocked(3), putc_unlocked(3) STANDARDS
The flockfile(), ftrylockfile(), and funlockfile() functions conform to IEEE Std 1003.1-2001 (``POSIX.1''). BSD
January 10, 2003 BSD

Featured Tech Videos