【发布时间】:2011-02-13 21:13:40
【问题描述】:
我本质上想重构 getTickCount() windows 函数,这样我就可以在基本的 C++ 中使用它,而无需任何非标准库甚至 STL。 (因此它符合 Android NDK 提供的库)
我看过
时钟()
当地时间
时间
但我仍然不确定是否可以使用时间库复制 getTickCount 窗口函数。
谁能指出我正确的方向如何做到这一点,或者即使它可能?
我想做的事情的概述:
我希望能够计算应用程序“执行”某个功能的时间。
例如,我希望能够计算应用程序尝试向服务器注册的时间
我正在尝试将它从 windows 移植到基于 linux 的 Android 上运行,这里是 windows 代码:
int TimeoutTimer::GetSpentTime() const
{
if (m_On)
{
if (m_Freq>1)
{
unsigned int now;
QueryPerformanceCounter((int*)&now);
return (int)((1000*(now-m_Start))/m_Freq);
}
else
{
return (GetTickCount()-(int)m_Start);
}
}
return -1;
}
【问题讨论】:
-
你想达到什么目的?可能有办法做到这一点。也许退后一步,解释一下一般问题。
-
好主意,我希望能够计算出应用程序“执行”某个功能的时间。因此,例如,我希望能够计算应用程序尝试向服务器注册的时间
-
在这种情况下,查找/创建一个可以计算经过时间的对象可能非常简单。您是在寻找线程/预定时间,还是整体时钟/挂钟时间?
-
我是从 Windows 移植它,它使用系统的经过时间,所以我不确定一个简单地检查开始和结束时间的对象是否足够。我已经在我的问题中发布了 windows 平台代码,这可能会更好地解释它
标签: c++ time android-ndk porting