_putc_nolock, _putwc_nolock
Écrit un caractère dans un flux sans verrouiller le thread.
int _putc_nolock(
int c,
FILE *stream
);
wint_t _putwc_nolock(
wchar_t c,
FILE *stream
);
Paramètres
c
Caractère à écrire.stream
[in] Pointeur vers la structure FILE.
Valeur de retour
Consultez putc, putwc.
Notes
_putc_nolock et _putwc_nolock sont identiques au versions sans le suffixe _nolock mais ils ne sont pas protégés des interférence par d'autres threads. Elles peuvent être plus rapides, car elles n'entraînent pas la charge du verrouillage des autres threads. Utilisez ces fonctions uniquement dans les contextes thread-safe, tels que les applications à un seul thread ou lorsque la portée appelante gère déjà l'isolation des threads.
_putwc_nolock est la version à caractères élargis de _putc_nolock; les deux fonctions se comportent de la même manière si le flux est ouvert en mode ANSI. _putc_nolock ne prend pas en charge actuellement la sortie dans un flux UNICODE.
Mappages de routines de texte générique
Routine Tchar.h |
_UNICODE et _MBCS non définis |
_MBCS défini |
_UNICODE défini |
---|---|---|---|
_puttc_nolock |
_putc_nolock |
_putc_nolock |
_putwc_nolock |
Configuration requise
Routine |
En-tête requis |
---|---|
_putc_nolock |
<stdio.h> |
_putwc_nolock |
<stdio.h> ou <wchar.h> |
La console n'est pas prise en charge dans les applications Windows Store . Les handles de flux standard associés à la console, stdin, stdout et stderr doivent être redirigés pour que les fonctions runtime C puissent les utiliser dans les applications Windows Store . Pour plus d'informations sur la compatibilité, consultez Compatibilité.
Bibliothèques
Toutes les versions des bibliothèques Runtime C.
Exemple
// crt_putc_nolock.c
/* This program uses putc to write buffer
* to a stream. 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;
/* Make standard out the stream and write to it. */
stream = stdout;
for( p = buffer; (ch != EOF) && (*p != '\0'); p++ )
ch = _putc_nolock( *p, stream );
}
Sortie
This is the line of output