![](/img/trans.png)
[英]locking global variable in 2 different function called by 2 different thread
[英]A DLL function must be called on a different thread
我有一个dll函数Copy(const char** srcFiles, const char* dst)
, srcFiles
复制到文件夹dst
。 并且它必须例如每0.01秒。 将复制进度信息(以百分比形式)发送到我自己的函数CopyProgress
。 问题是我无法更改Copy
函数代码,因此我认为在不同线程上执行此函数将是一个好主意。 但是我是多线程的初学者,无法想象如何做到这一点。
有任何想法,提示吗? 谢谢。
首先,您应该真正考虑更改Copy
以通过回调为您提供进度信息。 但是,如果绝对不必更改Copy
,则必须使用CreateThread
在另一个线程中运行它,然后定期扫描目标目录以查看已复制了多少(每0.01秒可能太快了,无法实现此方法) -如果您需要这么多的粒度,则必须在Copy
添加一些钩子。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.