예제 #1
0
파일: fputc.c 프로젝트: saltstar/smartnix
int fputc(int c, FILE* f) {
    if (atomic_load(&f->lock) < 0 || !__lockfile(f))
        return putc_unlocked(c, f);
    c = putc_unlocked(c, f);
    __unlockfile(f);
    return c;
}
예제 #2
0
파일: fputc.c 프로젝트: GregorR/musl
int fputc(int c, FILE *f)
{
	if (f->lock < 0 || !__lockfile(f))
		return putc_unlocked(c, f);
	c = putc_unlocked(c, f);
	__unlockfile(f);
	return c;
}
예제 #3
0
파일: fgetc.c 프로젝트: saltstar/smartnix
int fgetc(FILE* f) {
    int c;
    if (atomic_load(&f->lock) < 0 || !__lockfile(f))
        return getc_unlocked(f);
    c = getc_unlocked(f);
    __unlockfile(f);
    return c;
}
예제 #4
0
파일: fputc.c 프로젝트: Zabrane/osv
int fputc(int c, FILE *f)
{
	if (f->lock_owner == STDIO_SINGLETHREADED || !__lockfile(f))
		return putc_unlocked(c, f);
	c = putc_unlocked(c, f);
	__unlockfile(f);
	return c;
}
예제 #5
0
파일: fgetc.c 프로젝트: freiling/mojo
int fgetc(FILE* f) {
  int c;
  if (f->lock < 0 || !__lockfile(f))
    return getc_unlocked(f);
  c = getc_unlocked(f);
  __unlockfile(f);
  return c;
}
예제 #6
0
파일: getc.c 프로젝트: 151706061/osv
int getc(FILE *f)
{
	int c;
	if (f->no_locking || !__lockfile(f))
		return getc_unlocked(f);
	c = getc_unlocked(f);
	__unlockfile(f);
	return c;
}