我有一个dll函数Copy(const char** srcFiles, const char* dst)
,它将srcFiles
复制到文件夹dst
。例如,它必须每0.01秒。将复制进度信息(百分比)发送到我自己的函数CopyProgress
。问题是我无法更改Copy
函数代码,因此我认为在不同的线程上执行此函数是个好主意。但我是多线程的初学者,无法想象如何做到这一点。
任何想法,提示?谢谢。
答案 0 :(得分:0)
首先,您应该考虑更改Copy
以通过回调为您提供进度信息。但是如果你绝对必须不改变Copy
,你必须使用CreateThread
在另一个线程中运行它,然后定期扫描目标目录以查看已经复制了多少(每0.01秒可能一次)这个方法太快而不实用 - 如果你需要这么多的粒度,你必须添加一些钩子到Copy
)。