zoukankan      html  css  js  c++  java
  • sleep() 和 wait() 有什么区别

    sleep() 和 wait() 有什么区别?

    • 类的不同:sleep() 来自 Thread,wait() 来自 Object。
    • 释放锁:sleep() 不释放锁;wait() 释放锁。
    • 用法不同:sleep() 时间到会自动恢复;wait() 可以使用 notify()/notifyAll()直接唤醒。

    notify() 和 notifyAll() 有什么区别?

    notifyAll() 会唤醒所有的线程,notify() 只会唤醒一个线程。notifyAll() 调用后,会将全部线程由等待池移到锁池,然后参与锁的竞争,竞争成功则继续执行,如果不成功则留在锁池等待锁被释放后再次参与竞争。而 notify()只会唤醒一个线程,具体唤醒哪一个线程由虚拟机控制。

    线程的 run() 和 start() 有什么区别?

    start() 方法用于启动线程,run() 方法用于执行线程的运行时代码。run() 可以重复调用,而 start() 只能调用一次。

  • 相关阅读:
    tuple-1
    禅语-1
    综述的写作技巧-1
    皆大欢喜组合
    类和对象-3
    双棍练习
    CodeBlocks开发环境使用-1
    类和对象-2
    类和对象-1
    13-归并排序-分治策略应用于排序
  • 原文地址:https://www.cnblogs.com/sunyanblog/p/12753124.html
Copyright © 2011-2022 走看看