如果有一个函数
如下:void func()
{
for (int i = 0; i < 100; i++)
{
//....do something....
} for (int k = 0; k < 200; k++)
{
//....do something....
}//........n个 for 语句 for (int z = 0; z < n; z++)
{
///....do something....
}
}
我现在只知道这个函数,但是无法确定这个函数内部实际会有多少的工作要做然而现在我想在调用这个函数之后,然后知道它当前的进度(因为这个函数要完成的工作可能会很长,可能要1分钟)所以我想要用一个进度条来显示当前这个函数已经完成了多少的工作!当前在这个函数内部直接操作进度条是最常用的方法,但是类似这样的函数有成千上万个每一个都不一样,每一个都可能会有N个FOR语句
那我要怎么样用一种通用的方法来知道一个函数当前完成的进度呢?请高人指点!小弟就只有这么点分了!真是不好意思
如下:void func()
{
for (int i = 0; i < 100; i++)
{
//....do something....
} for (int k = 0; k < 200; k++)
{
//....do something....
}//........n个 for 语句 for (int z = 0; z < n; z++)
{
///....do something....
}
}
我现在只知道这个函数,但是无法确定这个函数内部实际会有多少的工作要做然而现在我想在调用这个函数之后,然后知道它当前的进度(因为这个函数要完成的工作可能会很长,可能要1分钟)所以我想要用一个进度条来显示当前这个函数已经完成了多少的工作!当前在这个函数内部直接操作进度条是最常用的方法,但是类似这样的函数有成千上万个每一个都不一样,每一个都可能会有N个FOR语句
那我要怎么样用一种通用的方法来知道一个函数当前完成的进度呢?请高人指点!小弟就只有这么点分了!真是不好意思
这功能若实在很重要的话 建议你分析这个EXE文件 然后把每一个函数有多少条指令计算出来 按照每条指令的平均执行时间来估算一下 这方法也许可行