gpt4 book ai didi

java - Android 上的 java.io 方法是否会抛出 InterruptedIOException?

转载 作者:行者123 更新时间:2023-11-30 11:36:54 28 4
gpt4 key购买 nike

我知道在引入 InterruptedIOException 时没有太多选择;它必须是 IOException 的子类。

如果您想知道线程是否被中断,InterruptedIOException 的唯一存在无疑会让事情变得有点复杂。这是因为如果您想维护线程被中断的信息,您必须以不同于 IOException 的方式对待 InterruptedIOException

虽然 InterruptedIOException 是为 java.nio 发明的,但有报道称至少在 Solaris 下,有 java.io 方法抛出InterruptedIOException。此外,对于新的 Android 版本,存在将库从 java.io 迁移到 java.nio 或以某种方式映射其他方法的风险。

为了安全起见,我倾向于认为应该考虑 InterruptedIOException。你怎么看?见解、经验、策略?

最佳答案

如果可以避免,我个人不会使用中断。对于阻塞 IO 操作,我会设置一个 volatile 标志并关闭流。如果已设置关闭标志,我将忽略抛出的任何 IOException。这使您可以更好地控制组件的关闭方式。一旦我将一个组件设置为 closed,我当然不会取消设置,我可以随时检查它。

关于java - Android 上的 java.io 方法是否会抛出 InterruptedIOException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14339224/

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