栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

linux文件操作文件写入相同字节,调用次数与耗时关系

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

linux文件操作文件写入相同字节,调用次数与耗时关系

在 linux 平台下,使用 write 函数写入 100 Mb 每次写入 16个字节,与8个字节运行时间比较

运行结果比较
  • 16 字节写入
    • 源码
    • 测试效果
  • 8 字节写入
    • 源码
    • 测试效果
  • 总结

16 字节写入 源码
#include
#include
#include
#include
#include
#include


#define TOTOAL_SIZE (100*1024*1024)


int main(void){
	

	int fd;
	char buf[8];

	if((fd=open("test.txt",O_CREAT|O_RDWR),0666) == -1){

	printf("error openn");
	exit(1);

	}	

	
	int num = TOTOAL_SIZE/sizeof(buf);
	
	int i = 0;
	
	while(i 
测试效果 

我们可以看到 test.txt 文件已经生成大小 100Mb,测试 3 次时间 第一次总调用时间为 22s 左右,后两次总时间为 16s 左右

8 字节写入 源码

代码部分修改的地方将上面的 char buf[8]; 修改为 char buf[16] write(fd,buf,16);

测试效果

删去 test.txt 后,我们可以看到 test.txt 文件已经生成大小 100Mb,测试 3 次时间 第一次总调用时间为 8s 左右,后两次总时间为 7s 左右

总结

我们可以看到写入同样写入 100Mb 每次写入的 大小越大耗时比每次写入的大小较小的的时间要短,所有我们应该在写入相同字节数文件时尽量减少调用系统 io 的次数,避免额外的调用时间开销.

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/450657.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号