发新话题
打印

求助~关于timer_sleep

求助~关于timer_sleep

如何修改让下面的程序避免忙等待啊?
/* Suspends execution for approximately TICKS timer ticks. */
void
timer_sleep (int64_t ticks)
{
  int64_t start = timer_ticks ();

  ASSERT (intr_get_level () == INTR_ON);
  while (timer_elapsed (start) < ticks)
    thread_yield ();
}
我想用semaphore和P,V让线程阻塞,但该怎么确定sleep的时间呢?
发新话题