RXTX SerialInputStream(serial.getInputStream()调用返回的结果)支持一种超时方案,该方案最终解决了我所有的问题。在创建新的SerialReader对象之前添加以下内容将导致读取不再无限期地阻塞:
serial.enableReceiveTimeout(1000);
在SerialReader对象中,我不得不更改一些内容以直接从InputStream读取,而不是创建ReadableByteChannel,但是现在,我可以停止并重新启动读取器而不会出现问题。



