Java套接字非阻塞读取

cla*_*ity 3 java sockets

我正在使用DataInputStream从套接字读取字符/数据.

我想使用.readUnsignedShort(); 如果没有要读取的2个字节,则抛出异常.我应该继承DataInputStream并覆盖添加异常的方法,还是有更简单的方法?

NG.*_*NG. 7

如果你想要快速和脏的东西,请尝试inputStream.available().

if (stream.available() < 2) {
    // throw it
}
Run Code Online (Sandbox Code Playgroud)

如果您希望在数据可用时进行真正的非阻塞读取和回调,我认为Pablo的答案更好.