我有类似于以下内容:
public class X extends Thread{
BufferedInputStream in = (BufferedInputStream) System.in;
public void run() {
while (true) {
try {
while (in.available() > 0) {
// interesting stuff here
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
...这在很大程度上有效,但有时我会开始在 stderr 中看到以下内容(一旦发生似乎会不断重复 - 我猜一旦这种情况开始发生,应用程序最终会崩溃):
java.io.IOException: Illegal seek
at java.io.FileInputStream.available(Native Method)
at java.io.BufferedInputStream.available(BufferedInputStream.java:381)
at compactable.sqlpp.X.run(X.java:40)
...我不知道是什么原因造成的。老实说难住了。群众对这怎么可能发生的任何想法?
感谢收到任何/所有有用的建议:-)