_putchar_nolock, _putwchar_nolock
Grava um caractere em um stdout sem bloquear o thread.
int _putchar_nolock(
int c
);
wint_t _putwchar_nolock(
wchar_t c
);
Parâmetros
- c
Caractere a ser gravado.
Valor de retorno
Consulte putchar, putwchar.
Comentários
putchar_nolock e _putwchar_nolock são idênticos às versões sem o sufixo _nolock, exceto pelo fato de não estarem protegidos contra interferência por outros threads. Elas podem ser mais rápidas, pois não incorrem na sobrecarga de bloquear outros threads. Use essas funções somente em contextos de thread-safe, como aplicativos single-threaded ou onde o escopo de chamada já manipula o isolamento do thread.
Mapeamentos da rotina de texto genérico
Rotina Tchar.h |
_UNICODE e _MBCS não definidos |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_puttchar_nolock |
_putchar_nolock |
_putchar_nolock |
_putwchar_nolock |
Requisitos
Rotina |
Cabeçalho necessário |
---|---|
_putchar_nolock |
<stdio.h> |
_putwchar_nolock |
<stdio.h> ou <wchar.h> |
O console não tem suporte em aplicativos do Windows Store. Os manipuladores de fluxo padrão associados ao console — stdin, stdout e stderr — devem ser redirecionados antes que as funções de tempo de execução do C possam utilizá-los em aplicativos do Windows Store. Para obter mais informações sobre compatibilidade, consulte Compatibilidade.
Bibliotecas
Todas as versões das Bibliotecas em tempo de execução C.
Exemplo
// crt_putchar_nolock.c
/* This program uses putchar to write buffer
* to stdout. If an error occurs, the program
* stops before writing the entire buffer.
*/
#include <stdio.h>
int main( void )
{
FILE *stream;
char *p, buffer[] = "This is the line of output\n";
int ch;
ch = 0;
for( p = buffer; (ch != EOF) && (*p != '\0'); p++ )
ch = _putchar_nolock( *p );
}
Saída
This is the line of output