我有一系列通过网络套接字发送的对象。
读取数据的代码已经实现并且可以工作,但我的问题是有时套接字超时会切断ObjectInputStream.readObject()
对象的读取(),从而破坏流。
我使用超时是因为此读取是在 JBoss 资源适配器中执行的,所以我不希望它无限期地阻塞并可能禁用 EAR 的取消部署或正常停止。
是否有一种优雅(可中断)的方式来处理读取对象流而不使用单独的线程并强行杀死它?
PS我知道使用对象流是一个非常糟糕的决定,但这就是客户端应用程序发送数据的方式,我无法改变它。