84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
ringa_lee
cout的话, 是行级缓冲, 只要碰到换行符就会flush一次. 但是cout对象在析构的时候也会flush一次. 你那个例子里面, 在return 0之前cout对象需要析构一次.cerr的话, 已经忘了APUE里面怎么说的了, 调试下来发现没有缓冲.....
多线程的时候你就体会到了,如果不清缓存,A线程的日志可能会在B线程被打印出来
cout的话, 是行级缓冲, 只要碰到换行符就会flush一次. 但是cout对象在析构的时候也会flush一次. 你那个例子里面, 在return 0之前cout对象需要析构一次.
cerr的话, 已经忘了APUE里面怎么说的了, 调试下来发现没有缓冲.....
多线程的时候你就体会到了,如果不清缓存,A线程的日志可能会在B线程被打印出来