本文整理汇总了C++中WaitCondition::SuccessWaiting方法的典型用法代码示例。如果您正苦于以下问题:C++ WaitCondition::SuccessWaiting方法的具体用法?C++ WaitCondition::SuccessWaiting怎么用?C++ WaitCondition::SuccessWaiting使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WaitCondition
的用法示例。
在下文中一共展示了WaitCondition::SuccessWaiting方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ShowAndWait
wait_result ShowAndWait (const WaitCondition& waitObj, unsigned timeOutSec, const CStdString& line1)
{
unsigned timeOutMs = timeOutSec * 1000;
if (m_dialog)
{
m_dialog->SetLine(1, line1);
m_dialog->SetPercentage(1); // avoid flickering by starting at 1% ..
}
XbmcThreads::EndTime end_time (timeOutMs);
while (!end_time.IsTimePast())
{
if (waitObj.SuccessWaiting())
return Success;
if (m_dialog)
{
if (!m_dialog->IsActive())
m_dialog->StartModal();
if (m_dialog->IsCanceled())
return Canceled;
m_dialog->Progress();
unsigned ms_passed = timeOutMs - end_time.MillisLeft();
int percentage = (ms_passed * 100) / timeOutMs;
m_dialog->SetPercentage(max(percentage, 1)); // avoid flickering , keep minimum 1%
}
Sleep (m_dialog ? 20 : 200);
}
return TimedOut;
}