Man Pages

unlocked_stdio(3) - phpMan unlocked_stdio(3) - phpMan

Command: man perldoc info search(apropos)  


UNLOCKED_STDIO(3)          Linux Programmer's Manual         UNLOCKED_STDIO(3)



NAME
       getc_unlocked, getchar_unlocked, putc_unlocked, putchar_unlocked - non-locking stdio functions

SYNOPSIS
       #include <stdio.h>

       int getc_unlocked(FILE *stream);
       int getchar_unlocked(void);
       int putc_unlocked(int c, FILE *stream);
       int putchar_unlocked(int c);

       void clearerr_unlocked(FILE *stream);
       int feof_unlocked(FILE *stream);
       int ferror_unlocked(FILE *stream);
       int fileno_unlocked(FILE *stream);
       int fflush_unlocked(FILE *stream);
       int fgetc_unlocked(FILE *stream);
       int fputc_unlocked(int c, FILE *stream);
       size_t fread_unlocked(void *ptr, size_t size, size_t n,
                             FILE *stream);
       size_t fwrite_unlocked(const void *ptr, size_t size, size_t n,
                             FILE *stream);

       char *fgets_unlocked(char *s, int n, FILE *stream);
       int fputs_unlocked(const char *s, FILE *stream);

       #include <wchar.h>

       wint_t getwc_unlocked(FILE *stream);
       wint_t getwchar_unlocked(void);
       wint_t fgetwc_unlocked(FILE *stream);
       wint_t fputwc_unlocked(wchar_t wc, FILE *stream);
       wint_t putwc_unlocked(wchar_t wc, FILE *stream);
       wint_t putwchar_unlocked(wchar_t wc);
       wchar_t *fgetws_unlocked(wchar_t *ws, int n, FILE *stream);
       int fputws_unlocked(const wchar_t *ws, FILE *stream);

   Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

       getc_unlocked(), getchar_unlocked(), putc_unlocked(), putchar_unlocked(): _POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE
       || _POSIX_SOURCE || _BSD_SOURCE || _SVID_SOURCE

       clearerr_unlocked(), feof_unlocked(), ferror_unlocked(), fileno_unlocked(), fflush_unlocked(),
       fgetc_unlocked(), fputc_unlocked(), fread_unlocked(), fwrite_unlocked(): _BSD_SOURCE || _SVID_SOURCE

       fgets_unlocked(), fputs_unlocked(), getwc_unlocked(), getwchar_unlocked(), fgetwc_unlocked(),
       fputwc_unlocked(), putwchar_unlocked(), fgetws_unlocked(), fputws_unlocked(): _GNU_SOURCE

DESCRIPTION
       Each of these functions has the same behavior as its counterpart without the "_unlocked"  suffix,  except  that
       they  do  not  use  locking (they do not set locks themselves, and do not test for the presence of locks set by
       others) and hence are thread-unsafe.  See flockfile(3).

CONFORMING TO
       The  four  functions  getc_unlocked(),   getchar_unlocked(),   putc_unlocked(),   putchar_unlocked()   are   in
       POSIX.1-2001.

       The  non-standard  *_unlocked()  variants occur on a few Unix systems, and are available in recent glibc.  They
       should probably not be used.

SEE ALSO
       flockfile(3), stdio(3), feature_test_macros(7)

COLOPHON
       This page is part of release 3.22 of the Linux man-pages project.  A description of the project,  and  informa-
       tion about reporting bugs, can be found at http://www.kernel.org/doc/man-pages/.



                                  2008-08-29                 UNLOCKED_STDIO(3)