1、标准io
标准io与不带缓冲的io的区别。
标准io在内存有一个缓冲区,io函数将数据写入到这个缓冲区,然后在使用系统调用read或write来写入内核的缓冲区中。所以标准io有两次缓冲。
二不带缓冲的io只有一次缓冲。 可以使用fflush将内存的缓冲写入到内核中的缓冲中,可以使用fsyn将内核中的缓冲数据写入磁盘中。
2、三种标准io的缓冲机制
1>全缓冲,当内存中的缓冲区满了才会进行实际io,与文件关联的io一般都是全缓冲。
2>行缓冲,当遇到换行符的时候才进行实际io。 与终端交互的io都是行缓冲。
3>不缓冲。