gpt4 book ai didi

android - 使用 LocalServerSocket 时出现 "IOException: Try again"

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:27:15 33 4
gpt4 key购买 nike

是否有人对异常“再试一次”有更多有用的信息?

我正在使用 LocalServerSocketLocalSocket 在应用之间发送位图:

输出:

socket = new LocalSocket();
socket.connect(new LocalSocketAddress(SOCKET_NAME));
fos = new DataOutputStream(socket.getOutputStream());
...

public void onEvent() {
fos.writeInt(width);
fos.writeInt(height);
fos.writeInt(newBuffer.length);
fos.write(newBuffer);
}

输入:

server = new LocalServerSocket(SOCKET_NAME);
socket = server.accept();
socket.setSoTimeout(60);

while(true) {

int width = fis.readInt(); // IO Exception being thrown here
int height = fis.readInt();
int length = fis.readInt();
byte[] bytes = new byte[length];
fis.read(bytes);
}

[为清楚起见删除了 try/catch 等]

04-18 09:19:11.664: W/System.err(1268): java.io.IOException: Try again
04-18 09:19:11.664: W/System.err(1268): at android.net.LocalSocketImpl.readba_native(Native Method)
04-18 09:19:11.664: W/System.err(1268): at android.net.LocalSocketImpl.access$400(LocalSocketImpl.java:29)
04-18 09:19:11.664: W/System.err(1268): at android.net.LocalSocketImpl$SocketInputStream.read(LocalSocketImpl.java:92)
04-18 09:19:11.664: W/System.err(1268): at libcore.io.Streams.readFully(Streams.java:81)
04-18 09:19:11.664: W/System.err(1268): at java.io.DataInputStream.readInt(DataInputStream.java:124)
04-18 09:19:11.664: W/System.err(1268): at com.test.util.BitmapSendingUtils$BitmapReceiver$1.run(BitmapSendingUtils.java:105)

最佳答案

您看到的异常可能是 java 等价于 EAGAIN 错误。参见示例 this answer .

您应该处理异常并再次尝试失败的 IO 操作。

关于android - 使用 LocalServerSocket 时出现 "IOException: Try again",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16078173/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com