mirror of https://github.com/mkerrisk/man-pages
137 lines
4.7 KiB
Groff
137 lines
4.7 KiB
Groff
.\" Copyright (C) 2001 Andries Brouwer <aeb@cwi.nl>.
|
|
.\"
|
|
.\" 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.
|
|
.\"
|
|
.TH UNLOCKED_STDIO 3 2008-08-29 "" "Linux Programmer's Manual"
|
|
.SH NAME
|
|
getc_unlocked, getchar_unlocked, putc_unlocked,
|
|
putchar_unlocked \- nonlocking stdio functions
|
|
.SH SYNOPSIS
|
|
.nf
|
|
.B #include <stdio.h>
|
|
.sp
|
|
.BI "int getc_unlocked(FILE *" stream );
|
|
.B "int getchar_unlocked(void);"
|
|
.BI "int putc_unlocked(int " c ", FILE *" stream );
|
|
.BI "int putchar_unlocked(int " c );
|
|
.sp
|
|
.BI "void clearerr_unlocked(FILE *" stream );
|
|
.BI "int feof_unlocked(FILE *" stream );
|
|
.BI "int ferror_unlocked(FILE *" stream );
|
|
.BI "int fileno_unlocked(FILE *" stream );
|
|
.BI "int fflush_unlocked(FILE *" stream );
|
|
.BI "int fgetc_unlocked(FILE *" stream );
|
|
.BI "int fputc_unlocked(int " c ", FILE *" stream );
|
|
.BI "size_t fread_unlocked(void *" ptr ", size_t " size ", size_t " n ,
|
|
.BI " FILE *" stream );
|
|
.BI "size_t fwrite_unlocked(const void *" ptr ", size_t " size ", size_t " n ,
|
|
.BI " FILE *" stream );
|
|
.sp
|
|
.BI "char *fgets_unlocked(char *" s ", int " n ", FILE *" stream );
|
|
.BI "int fputs_unlocked(const char *" s ", FILE *" stream );
|
|
.sp
|
|
.B #include <wchar.h>
|
|
.sp
|
|
.BI "wint_t getwc_unlocked(FILE *" stream );
|
|
.B "wint_t getwchar_unlocked(void);"
|
|
.BI "wint_t fgetwc_unlocked(FILE *" stream );
|
|
.BI "wint_t fputwc_unlocked(wchar_t " wc ", FILE *" stream );
|
|
.BI "wint_t putwc_unlocked(wchar_t " wc ", FILE *" stream );
|
|
.BI "wint_t putwchar_unlocked(wchar_t " wc );
|
|
.BI "wchar_t *fgetws_unlocked(wchar_t *" ws ", int " n ", FILE *" stream );
|
|
.BI "int fputws_unlocked(const wchar_t *" ws ", FILE *" stream );
|
|
.fi
|
|
.sp
|
|
.in -4n
|
|
Feature Test Macro Requirements for glibc (see
|
|
.BR feature_test_macros (7)):
|
|
.ad l
|
|
.in
|
|
.sp
|
|
.BR getc_unlocked (),
|
|
.BR getchar_unlocked (),
|
|
.BR putc_unlocked (),
|
|
.BR putchar_unlocked ():
|
|
.RS 4
|
|
_POSIX_C_SOURCE\ >=\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE ||
|
|
_BSD_SOURCE || _SVID_SOURCE
|
|
.RE
|
|
.sp
|
|
.BR clearerr_unlocked (),
|
|
.BR feof_unlocked (),
|
|
.BR ferror_unlocked (),
|
|
.BR fileno_unlocked (),
|
|
.BR fflush_unlocked (),
|
|
.BR fgetc_unlocked (),
|
|
.BR fputc_unlocked (),
|
|
.BR fread_unlocked (),
|
|
.BR fwrite_unlocked ():
|
|
.RS 4
|
|
_BSD_SOURCE || _SVID_SOURCE
|
|
.RE
|
|
.sp
|
|
.BR fgets_unlocked (),
|
|
.BR fputs_unlocked (),
|
|
.BR getwc_unlocked (),
|
|
.BR getwchar_unlocked (),
|
|
.BR fgetwc_unlocked (),
|
|
.BR fputwc_unlocked (),
|
|
.BR putwchar_unlocked (),
|
|
.BR fgetws_unlocked (),
|
|
.BR fputws_unlocked ():
|
|
.RS 4
|
|
_GNU_SOURCE
|
|
.RE
|
|
.ad b
|
|
.SH 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
|
|
.BR flockfile (3).
|
|
.SH "CONFORMING TO"
|
|
The four functions
|
|
.BR getc_unlocked (),
|
|
.BR getchar_unlocked (),
|
|
.BR putc_unlocked (),
|
|
.BR putchar_unlocked ()
|
|
are in POSIX.1-2001.
|
|
|
|
The nonstandard
|
|
.BR *_unlocked ()
|
|
variants occur on a few UNIX systems, and are available in recent glibc.
|
|
.\" E.g., in HP-UX 10.0. In HP-UX 10.30 they are called obsolescent, and
|
|
.\" moved to a compatibility library.
|
|
.\" Available in HP-UX 10.0: clearerr_unlocked, fclose_unlocked,
|
|
.\" feof_unlocked, ferror_unlocked, fflush_unlocked, fgets_unlocked,
|
|
.\" fgetwc_unlocked, fgetws_unlocked, fileno_unlocked, fputs_unlocked,
|
|
.\" fputwc_unlocked, fputws_unlocked, fread_unlocked, fseek_unlocked,
|
|
.\" ftell_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked,
|
|
.\" getw_unlocked, getwc_unlocked, getwchar_unlocked, putc_unlocked,
|
|
.\" putchar_unlocked, puts_unlocked, putws_unlocked, putw_unlocked,
|
|
.\" putwc_unlocked, putwchar_unlocked, rewind_unlocked, setvbuf_unlocked,
|
|
.\" ungetc_unlocked, ungetwc_unlocked.
|
|
They should probably not be used.
|
|
.SH "SEE ALSO"
|
|
.BR flockfile (3),
|
|
.BR stdio (3)
|