本文整理汇总了C++中PerformanceTimer::getSplitTime方法的典型用法代码示例。如果您正苦于以下问题:C++ PerformanceTimer::getSplitTime方法的具体用法?C++ PerformanceTimer::getSplitTime怎么用?C++ PerformanceTimer::getSplitTime使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PerformanceTimer
的用法示例。
在下文中一共展示了PerformanceTimer::getSplitTime方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: update
void TaskQueue::update(float maxTime)
{
PerformanceTimer timer;
timer.start();
TaskRequest *req;
resultQLock.enter();
while (!resultQ.empty() && (maxTime==0 || timer.getSplitTime() < maxTime))
{
req=resultQ.back();
resultQ.pop_back();
--numResults;
--sm_iTotalNumResults;
resultQLock.leave();
if (req->mainThreadFinish())
{
req->mainThreadOnComplete();
delete req;
}
else
{
// if Finish() returns false, more worker thread processing is needed
asyncRequest(req);
}
resultQLock.enter();
}
resultQLock.leave();
}
示例2: updateQueue
void updateQueue ( BuildQueue * queue, PerformanceTimer const & timer, float timeBudget )
{
BuildQueue::iterator it = queue->begin();
while(it != queue->end())
{
if(timer.getSplitTime() >= timeBudget) return;
ServerPathBuilder * currentBuilder = (*it);
currentBuilder->update();
BuildQueue::iterator old = it;
it++;
if(currentBuilder->buildDone())
{
currentBuilder->setQueued(false);
queue->erase(old);
}
}
}