似乎glibc的fprintf()实现是线程安全的,但对于微软的CRT来说也是如此吗?
通过线程安全,我并不仅仅意味着崩溃,而且如果多个线程(在同一个进程中)调用fprintf(),文本将不会混合.
fprintf()
也就是说,例如,如果线程A调用fprintf(stdout, "aaaa");并且线程B调用fprintf(stdout, "bbbb");它,则保证不会混合成为aabbaabb.
fprintf(stdout, "aaaa");
fprintf(stdout, "bbbb");
aabbaabb
有这样的保证吗?
c printf multithreading msvcrt
c ×1
msvcrt ×1
multithreading ×1
printf ×1