本文整理汇总了C++中TimeSpan::Ticks方法的典型用法代码示例。如果您正苦于以下问题:C++ TimeSpan::Ticks方法的具体用法?C++ TimeSpan::Ticks怎么用?C++ TimeSpan::Ticks使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TimeSpan
的用法示例。
在下文中一共展示了TimeSpan::Ticks方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SemaImplementationTimedWait
Bool SemaImplementationTimedWait(void* Data, const TimeSpan& timeout)
{
timeval t;
gettimeofday(&t, 0);
RF_Type::UInt64 end =
t.tv_sec * 10000000llu + t.tv_usec * 10llu + timeout.Ticks();
timespec atTime;
atTime.tv_sec = end / TimeSpan::TicksPerSecond;
atTime.tv_nsec = end - atTime.tv_sec * TimeSpan::TicksPerSecond;
#ifdef RF_OSX
time_t timer = time(NULL) * 1000 + end;
int res = 0;
do
{
res = sem_trywait(static_cast<sem_t*>(Data));
if(res == 0)
break;
sleep(1);
} while(time(NULL) * 1000 < timer);
#else
int res = sem_timedwait(static_cast<sem_t*>(Data), &atTime);
#endif
return res == 0;
}
示例2: Sleep
void Thread::Sleep(TimeSpan timeout)
{
if(timeout == TimeSpan::Zero)
return; //! no reason to sleep
LARGE_INTEGER pli;
pli.QuadPart = -timeout.Ticks();
KeDelayExecutionThread((KPROCESSOR_MODE)0, FALSE, &pli);
}
示例3: TimeSpan
constexpr TimeSpan operator-(TimeSpan ts)
{
return TimeSpan(-ts.Ticks());
}
示例4:
constexpr bool operator>=(TimeSpan a, TimeSpan b)
{
return a.Ticks() >= b.Ticks();
}