Java Sleep sleep(long msecs, boolean busy_sleep)

Here you can find the source of sleep(long msecs, boolean busy_sleep)

Description

On most UNIX systems, the minimum sleep time is 10-20ms.

License

LGPL

Declaration

public static void sleep(long msecs, boolean busy_sleep) throws InterruptedException 
    

Method Source Code

//package com.java2s;

public class Main {
    /** Sleep for timeout msecs. Returns when timeout has elapsed or thread was interrupted */
    public static void sleep(long timeout) throws InterruptedException {
        //        try {
        Thread.sleep(timeout);//from   www.j a v  a  2s.co m
        //        }
        //        catch(Exception e) { // GemStoneAddition
        //        }
    }

    /**
     * On most UNIX systems, the minimum sleep time is 10-20ms. Even if we specify sleep(1), the thread will
     * sleep for at least 10-20ms. On Windows, sleep() seems to be implemented as a busy sleep, that is the
     * thread never relinquishes control and therefore the sleep(x) is exactly x ms long.
     */
    public static void sleep(long msecs, boolean busy_sleep) throws InterruptedException // GemStoneAddition
    {
        if (Thread.interrupted())
            throw new InterruptedException(); // GemStoneAddition
        if (!busy_sleep) {
            sleep(msecs);
            return;
        }

        long start = System.currentTimeMillis();
        long stop = start + msecs;

        while (stop > start) {
            start = System.currentTimeMillis();
        }
    }
}

Related

  1. Sleep(long milliseconds)
  2. sleep(long milliTime)
  3. sleep(long ms)
  4. sleep(long ms)
  5. sleep(long ms)
  6. sleep(long msecs, boolean busy_sleep)
  7. sleep(long sleepTime)
  8. sleep(long sleepTime)
  9. sleep(long time)