从外部.net库获取进度信息



我有一行代码,它将花费10-50分钟来完成它的任务,这是一个分析的事情。这是采取这么长时间的行被安置在一个线程中,但是没有回调实现在该托管库因此我不能让用户知道我们在解析这个文件。

是否有任何方法可以通过使用反射来深入研究库?我知道这听起来不太对,因为反射提供了库类型和代码的信息但它在运行时对外部库有什么有用的吗?我希望问题已经说清楚了。

谢谢,

如果没有回调,你可能会陷入根据其他一些可观察到的副作用来估计剩余时间的问题。

跟踪以前运行所花费的时间并基于此估计进度是否有效?

如果输出是外部的东西,比如文件/db,你可以检查吗?

如果输出是内存中的东西,你可以在另一个线程中检查对象,如果你创建了它,或者使用一些"不安全"的代码来检查内存

您可以使用http://www.reflector.net/查看库中的代码实际做了什么,但是除非您找到任何回调钩子,否则就没有太多其他内容了。

最新更新