Android 使用 socketchannel 的 TCP 客户端。如何为其设置选项?
Android TCP client using socketchannel. How can I set options for it?
我正在 android 设备 运行 的 android 版本 4.4.2 的客户端上工作,我发现它有一些奇怪的行为。很可能是因为它在构建包之前正在等待更多数据,但我不想这样,所以我试图设置选项 TCP_NODELAY。但是,在任何地方都找不到这样的函数或变量。
如何设置SocketChannel为无延迟模式?这是我当前创建套接字通道的代码。
sockChannel = SocketChannel.open(new InetSocketAddress(socket_ip_, socket_port_));
我试过 sockChannel.socket().setTCPNoDelay(true);
,但我发现没有任何变化。我在正确的轨道上吗?我错过了什么吗?
感谢您的帮助。
如果有人找到这个,我有正确的解决方案。
sockChannel.socket().setTCPNoDelay(true);
有效。我没有看到行为有任何变化的原因是因为有人更改了应用程序的名称并且忘记记录他所做的更改。因此,我每次都在启动旧程序。
要访问套接字选项和功能,您可以通过编写 .socket()
.
来请求套接字
我正在 android 设备 运行 的 android 版本 4.4.2 的客户端上工作,我发现它有一些奇怪的行为。很可能是因为它在构建包之前正在等待更多数据,但我不想这样,所以我试图设置选项 TCP_NODELAY。但是,在任何地方都找不到这样的函数或变量。
如何设置SocketChannel为无延迟模式?这是我当前创建套接字通道的代码。
sockChannel = SocketChannel.open(new InetSocketAddress(socket_ip_, socket_port_));
我试过 sockChannel.socket().setTCPNoDelay(true);
,但我发现没有任何变化。我在正确的轨道上吗?我错过了什么吗?
感谢您的帮助。
如果有人找到这个,我有正确的解决方案。
sockChannel.socket().setTCPNoDelay(true);
有效。我没有看到行为有任何变化的原因是因为有人更改了应用程序的名称并且忘记记录他所做的更改。因此,我每次都在启动旧程序。
要访问套接字选项和功能,您可以通过编写 .socket()
.