_fputc_nolock, _fputwc_nolock
Scrive un carattere in un flusso senza bloccare la thread.
int _fputc_nolock(
int c,
FILE *stream
);
wint_t _fputwc_nolock(
wchar_t c,
FILE *stream
);
Parametri
c
Carattere da scrivere.stream
Puntatore alla struttura FILE.
Valore restituito
Ognuna di queste funzioni restituisce il carattere scritto. Per informazioni sull'errore, vedere fputc, fputwc.
Note
_fputc_nolock e _fputwc_nolock sono identiche rispettivamente a fputc e fputwc ad eccezione del fatto che non sono protette dalle interferenze da parte di altre thread. Potrebbero essere più veloci perché non comportano un sovraccarico che blocca altri thread. Utilizzare queste funzioni solo in contesti thread-safe come applicazioni a thread singolo o dove l'ambito chiamante già gestisce l'isolamento del thread.
Queste due funzioni si comportano in modo identico se il flusso viene aperto in modalità ANSI. _fputc_nolock non supporta attualmente l'output in un flusso UNICODE.
Mapping di routine su testo generico
Routine Tchar.h |
_UNICODE e _MBCS non definiti |
_MBCS definito |
_UNICODE definito |
---|---|---|---|
_fputtc_nolock |
_fputc_nolock |
_fputc_nolock |
_fputwc_nolock |
Requisiti
Funzione |
Intestazione obbligatoria |
---|---|
_fputc_nolock |
<stdio.h> |
_fputwc_nolock |
<stdio.h> o <wchar.h> |
La console non è supportata nelle applicazioni Windows Store. Gli handle del flusso standard associati alla console,stdin, stdout e stderr, devono essere reindirizzati prima di poter utilizzare le funzioni di runtime del linguaggio C nelle applicazioni Windows Store. Per ulteriori informazioni sulla compatibilità, vedere Compatibilità.
Esempio
// crt_fputc_nolock.c
// This program uses _fputc_nolock
// to send a character array to stdout.
#include <stdio.h>
int main( void )
{
char strptr1[] = "This is a test of _fputc_nolock!!\n";
char *p;
// Print line to stream using fputc.
p = strptr1;
while( (*p != '\0') && _fputc_nolock( *(p++), stdout ) != EOF ) ;
}