join

join()方法表示在A线程中调用B.join()方法时,A线程进入等待;join()方法其实就是调用Thread方法类的带参数的wait方法;wait(0)相当于wait(),无限等待,直到notify,notifyall方法唤醒该线程;

yield

yield方法为Thread静态原生方法,他不能指定时间,调用yield方法,会建议cpu按优先级高的线程优先执行,多部分会按优先级高的线程优先执行,但也有例外,所以只能说建议。优先级从1到10,10为最高优先级;

yield方法不会释放这个线程拥有的锁;——???

等待线程结束(join)和谦让(yield)

public final void join() throws InterruptedException; 
public static native void yield();
wait(0); // 无限期等待

知识点

  • 不要在应用程序中,在Thread对象上使用wait()或notify()等方法,因为可能会影响系统API的工作或被系统API影响

results matching ""

    No results matching ""