用shfileoperation拷贝文件的问题

时间:2022-03-25 21:38:06
起多个线程,同时用shfileoperation来进行文件拷贝,发现内存会上升到1000K以上,同时win7会不定时(概率较小)出现程序无法响应,这个问题该如何解决

7 个解决方案

#1


拷贝文件太多,线程太多就会消耗资源,资源管理器也会出现暂时失去响应的情况

#2


那意思就是无解了。那能否屏蔽掉win7的无响应提示呢,我的程序,不希望别人给意外终止掉,出现win7的无响应提示,这时可能导致用户点击关闭

#3


搜“卷影复制”

#4


搜“robocopy”

#5


引用 4 楼 zhao4zhong1 的回复:
搜“robocopy”


使用robocopy,就能保证不会有程序无法响应的情况出现?现在虽然说,会有这种情况出现,但是概率是比较小,一般也不会出现

#6


一开始使用的是copyfile函数,发觉一两个线程还行,多了的话,就一堆问题了

#7


win7无法响应,是由于插入USB设备太多,软件在进行设备扫描所致,目前暂时忽略这个问题。拷贝文件时占用内存太多,是由于计算文件的MD5码方式不对,修改后内存占用大的问题也解决了。

#1


拷贝文件太多,线程太多就会消耗资源,资源管理器也会出现暂时失去响应的情况

#2


那意思就是无解了。那能否屏蔽掉win7的无响应提示呢,我的程序,不希望别人给意外终止掉,出现win7的无响应提示,这时可能导致用户点击关闭

#3


搜“卷影复制”

#4


搜“robocopy”

#5


引用 4 楼 zhao4zhong1 的回复:
搜“robocopy”


使用robocopy,就能保证不会有程序无法响应的情况出现?现在虽然说,会有这种情况出现,但是概率是比较小,一般也不会出现

#6


一开始使用的是copyfile函数,发觉一两个线程还行,多了的话,就一堆问题了

#7


win7无法响应,是由于插入USB设备太多,软件在进行设备扫描所致,目前暂时忽略这个问题。拷贝文件时占用内存太多,是由于计算文件的MD5码方式不对,修改后内存占用大的问题也解决了。