Provided by: manpages-pl-dev_4.13-4_all bug

NAZWA

       getc_unlocked,  getchar_unlocked,  putc_unlocked,  putchar_unlocked - nieblokujące funkcje
       standardowego wejścia/wyjścia

SKŁADNIA

       #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);

   Wymagane ustawienia makr biblioteki glibc (patrz feature_test_macros(7)):

       getc_unlocked(), getchar_unlocked(), putc_unlocked(), putchar_unlocked():
           /* Od glibc 2.24: */ _POSIX_C_SOURCE >= 199309L
               || /* Wersje glibc <= 2.23: */ _POSIX_C_SOURCE
               || /* Wersje glibc <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE

       clearerr_unlocked(), feof_unlocked(), ferror_unlocked(), fileno_unlocked(),
       fflush_unlocked(), fgetc_unlocked(), fputc_unlocked(), fread_unlocked(),
       fwrite_unlocked():
           /* Glibc od 2.19: */ _DEFAULT_SOURCE
               || /* Glibc w wersji <= 2.19: */ _SVID_SOURCE || _BSD_SOURCE

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

OPIS

       Każda z  tych  funkcji  zachowuje  się  tak  samo,  jak  jej  odpowiednik  bez  przyrostka
       "_unlocked" z tym wyjątkiem, że nie używają one blokad (same nie ustawiają blokad, jak też
       nie sprawdzają, czy blokada została ustawiona przez  innych)  i  z  tego  względu  nie  są
       bezpieczne w trybie wielowątkowym. Zobacz flockfile(3).

ATRYBUTY

       Informacje   o   pojęciach   używanych   w  tym  rozdziale  można  znaleźć  w  podręczniku
       attributes(7).

       ┌─────────────────────┬────────────────────────┬───────────────────────┐
       │InterfejsAtrybutWartość               │
       ├─────────────────────┼────────────────────────┼───────────────────────┤
       │getc_unlocked(),     │ Bezpieczeństwo wątkowe │ MT-Safe race:stream   │
       │putc_unlocked(),     │                        │                       │
       │clearerr_unlocked(), │                        │                       │
       │fflush_unlocked(),   │                        │                       │
       │fgetc_unlocked(),    │                        │                       │
       │fputc_unlocked(),    │                        │                       │
       │fread_unlocked(),    │                        │                       │
       │fwrite_unlocked(),   │                        │                       │
       │fgets_unlocked(),    │                        │                       │
       │fputs_unlocked(),    │                        │                       │
       │getwc_unlocked(),    │                        │                       │
       │fgetwc_unlocked(),   │                        │                       │
       │fputwc_unlocked(),   │                        │                       │
       │putwc_unlocked(),    │                        │                       │
       │fgetws_unlocked(),   │                        │                       │
       │fputws_unlocked()    │                        │                       │
       ├─────────────────────┼────────────────────────┼───────────────────────┤
       │getchar_unlocked(),  │ Bezpieczeństwo wątkowe │ MT-Unsafe race:stdin  │
       │getwchar_unlocked()  │                        │                       │
       ├─────────────────────┼────────────────────────┼───────────────────────┤
       │putchar_unlocked(),  │ Bezpieczeństwo wątkowe │ MT-Unsafe race:stdout │
       │putwchar_unlocked()  │                        │                       │
       ├─────────────────────┼────────────────────────┼───────────────────────┤
       │feof_unlocked(),     │ Bezpieczeństwo wątkowe │ MT-Safe               │
       │ferror_unlocked(),   │                        │                       │
       │fileno_unlocked()    │                        │                       │
       └─────────────────────┴────────────────────────┴───────────────────────┘

ZGODNE Z

       Cztery   następujące   funkcje:  getc_unlocked(),  getchar_unlocked(),  putc_unlocked()  i
       putchar_unlocked() występują w POSIX.1-2001 i POSIX.1-2008.

       Niestandardowe odmiany funkcji *_unlocked() występują również w kilku systemach z  rodziny
       Uniksów, jak też są dostępne w najnowszych wersjach glibc.  Raczej nie należy ich używać.

ZOBACZ TAKŻE

       flockfile(3), stdio(3)

O STRONIE

       Angielska  wersja  tej  strony  pochodzi  z  wydania  5.10  projektu Linux man-pages. Opis
       projektu, informacje dotyczące zgłaszania błędów oraz  najnowszą  wersję  oryginału  można
       znaleźć pod adresem https://www.kernel.org/doc/man-pages/.

T◈UMACZENIE

       Autorami  polskiego  tłumaczenia  niniejszej strony podręcznika są: Andrzej Krzysztofowicz
       <ankry@green.mf.pg.gda.pl>,   Robert   Luberda   <robert@debian.org>   i   Michał   Kułach
       <michal.kulach@gmail.com>

       Niniejsze  tłumaczenie  jest  wolną  dokumentacją. Bliższe informacje o warunkach licencji
       można   uzyskać   zapoznając   się   z   GNU   General   Public   License   w   wersji   3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩   lub   nowszej.   Nie  przyjmuje  się  ŻADNEJ
       ODPOWIEDZIALNOŚCI.

       Błędy w tłumaczeniu  strony  podręcznika  prosimy  zgłaszać  na  adres  listy  dyskusyjnej
       ⟨manpages-pl-list@lists.sourceforge.net⟩.

                                       15 września 2017 r.                      UNLOCKED_STDIO(3)