gpt4 book ai didi

java - 在 Java 中不旋转就阻塞?

转载 作者:搜寻专家 更新时间:2023-11-01 01:01:23 25 4
gpt4 key购买 nike

Java 中的某些方法会阻塞,直到它们可以执行某些操作,例如 ServerSocket.accept() 和 InputStream.read(),但我很难找到它是如何执行此操作的。我能想到的最接近的事情是 while() 循环,每次通过 Thread.sleep() ,但 sleep 时间越长,阻塞响应越少, sleep 时间越短,发生的旋转越多。

我有两个问题:

  1. 各种标准函数(如上面的函数)如何阻塞? native 代码? while() 循环?还有别的吗?

  2. 我应该如何实现阻塞的方法?

最佳答案

您列出的操作因底层平台(即 native 代码)而被阻止。

您可以使用 Java 的 Object.wait()Object.notify() 方法实现 block ; wait() 将阻塞调用线程,直到另一个线程在同一锁上调用 notify()

关于java - 在 Java 中不旋转就阻塞?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/427306/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com