java.io.StreamCorruptedException: invalid type code: AC
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1356)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at ReaderThread.run(Client.java:43)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1356)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at ReaderThread.run(Client.java:43)
at java.lang.Thread.run(Thread.java:619)
个人理解:线程通信中对象流在使用时,最好只新建一次,因为对象流特殊,有锁机制
问题补充:
java.io.StreamCorruptedException: invalid type code: AC 在做一个聊天程序的时候,从客户端读取聊天信息后通过ObjectOuputStream写入socket输出流,在服务器端通过socket输入流readObject()读取时抛出异常... 还有就是那个invalid type code: AC有时候是64000,72000这些代码有什么用,代表什么?求高手,求详细解答!
你是不是在客户端的一个线程里面同时new了多个ObjectOutputStream流。这在ObjectOutputStream是不允许的,其它的流可以。ObjectOutputStream有锁机制