JAVA源码阅读之----Object(2)

多线程暂时学习不深,待后续了解深入之后在来编写该文档,此处只做简单翻译

从所有等待的线程中选取一个进入就绪状态

public final native void notify();

让所有等待的线程进入就绪状态

public final native void notifyAll();

程序等待timeout毫秒,若等待时间超过timeout毫秒数,则程序自动进入就绪状态.类似于sleep,但与sleep的区别在于,休眠期间会释放掉锁

public final native void wait(long timeout) throws InterruptedException;
public final void wait(long timeout, int nanos) throws InterruptedException {
        if (timeout < 0) {
            throw new IllegalArgumentException("timeout value is negative");
        }

        if (nanos < 0 || nanos > 999999) {
            throw new IllegalArgumentException(
                                "nanosecond timeout value out of range");
        }

        if (nanos >= 500000 || (nanos != 0 && timeout == 0)) {
            timeout++;
        }

        wait(timeout);
    }
public final void wait() throws InterruptedException {
        wait(0);
    }
protected void finalize() throws Throwable { }

猜你喜欢

转载自blog.csdn.net/qq_27515289/article/details/80182517