gpt4 book ai didi

java - Java 类(如 Socket)中如何实现超时阻塞调用

转载 作者:行者123 更新时间:2023-12-01 14:57:17 31 4
gpt4 key购买 nike

Java中有许多API支持blockingcall(timeout),例如Socket、Lock等。这些东西在Java中是如何实现的?

我试图找出答案,但它导致 native 代码不可见:(

在 native 级别的java中是否使用了类似的方法,例如创建线程并在超时时中断它?如果是这样,那么同样可以在 Java 级别完成,为什么要使用 native ?

最佳答案

它导致 native 代码不可见这通常意味着它没有在 Java 中实现。通常它是由操作系统实现的。您可以获取 Linux 的源代码,但不能获取 Windows 的源代码。

使用Java线程中断,实际上并不中断线程。它只是设置一个标志,不会唤醒所有阻塞操作。不使用此机制,因为它并不总是您想要的。

关于java - Java 类(如 Socket)中如何实现超时阻塞调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14194777/

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