精易论坛

标题: 易语言如何写个快速拷贝软件 [打印本页]

作者: blackmere    时间: 2024-10-30 00:12
标题: 易语言如何写个快速拷贝软件
本帖最后由 blackmere 于 2024-10-30 00:14 编辑

用  内存映射文件-大文件读写 模块 加上鱼刺多线程模块,用映射视图写的大文件拷贝,
速度怎么都比不上win系统里面复制粘贴的拷贝速度,测试系统里面拷贝速度能有每秒50M
用易语言写的拷贝速度最高每秒7M。而且很占用系统资源,低配一点电脑很卡顿。

是不是易语言根本都没有办法写出来完美拷贝程序。
求大神指点,提示一个方案。


作者: 大漠小鸟    时间: 2024-10-30 00:12
拷贝速度取决于硬盘读写速度、内存读写速度、文件大小等多个因素决定的。
易语言的拷贝速度理论上会比系统拷贝速度要快,因为系统拷贝还要备份文件的属性、用户权限、进度展示等额外操作,易语言单纯的拷贝文件数据并不会比系统的要慢,两者速度基本是相近的,看代码怎么写。
本机测试:
400mb文件,在SSD和机械硬盘上拷贝速度≈1.8-2.0Gb/s
8.0Gb文件,平均速度在300-1.2Gb/s之间
速度有时候快有时候慢一些,可能和系统资源的繁忙度有关。
作者: haoren1212    时间: 2024-10-30 00:25
本帖最后由 haoren1212 于 2024-10-30 00:26 编辑

拷贝尽量不要涉及到读写,读入和写出都会占用到内存简单的复制,速度更快点

作者: blackmere    时间: 2024-10-30 09:43
本帖最后由 blackmere 于 2024-10-30 10:00 编辑
大漠小鸟 发表于 2024-10-30 00:51
拷贝速度取决于硬盘读写速度、内存读写速度、文件大小等多个因素决定的。
易语言的拷贝速度理论上会比系统 ...

能把你的测试程序给参考一下吗。谢谢了大文件拷贝要分段,超过4G,不能直接全部加载,分段就要重新读写,我测试U盘,分段读写就会慢,分段越多月满。不知道怎么解决。

作者: blackmere    时间: 2024-10-30 09:59
大漠小鸟 发表于 2024-10-30 00:51
拷贝速度取决于硬盘读写速度、内存读写速度、文件大小等多个因素决定的。
易语言的拷贝速度理论上会比系统 ...

大文件拷贝要分段,超过4G,不能直接全部加载,分段就要重新读写,我测试U盘,分段读写就会慢,分段越多月满。不知道怎么解决。




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4