设置套接字选择失败错误文件编号异常



我在Android中设置套接字选项失败异常。我做错了什么?

    setsockopt failed: EBADF (Bad file number)

对于以下代码:

int timeout = 500;

Socket socket = new Socket(InetAddress.getByAddress(new byte[]{10, 0, 2, 2}),
                            Integer.parseInt(m.destPort));
                    ObjectOutputStream oos = new ObjectOutputStream(socket.getOutputStream());
                    oos.writeObject(m);
                    oos.close();
                    socket.setSoTimeout(timeOut);
                    ObjectInputStream iis = new ObjectInputStream(socket.getInputStream());
                    iis.readObject();
                    iis.close();
                    socket.close();

关闭一个套接字的输入或输出流会关闭另一个流和套接字。

改变

oos.close();

oos.flush();

(安卓编码不佳。它应该抛出一个SocketException: socket closed.

最新更新