clock函数耗时计算不准确

本文探讨了使用clock()函数在测量FFmpeg函数耗时中出现的不准确性问题,并提供了两种替代方案:GetTickCount()和QueryPerformanceCounter(),用于更精确地测量耗时。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

场景
当前使用clock()计算ffmpeg函数耗时,偶尔出现不准确的问题,相差有100多毫秒
clock() measure the CPU time used by your process, not the wall-clock time.
When you have multiple threads running simultaneously, you can obviously burn through CPU time much faster.

当前提供如下方案,不知道是否也会出现类似的情况
1)GetTickCount();
2)
LARGE_INTEGER t1, t2, tc;
QueryPerformanceFrequency(&tc);
QueryPerformanceCounter(&t1);
//do something
QueryPerformanceCounter(&t2);
int fCount =( t2.QuadPart - t1.QuadPart)*1000 / tc.QuadPart;

转载于:https://blog.51cto.com/fengyuzaitu/2047882

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值