我使用Camel + Netty进行套接字连接。在camel-context
文件中,我使用Netty进行套接字连接,但我希望Netty的行为如下:
Netty必须从大小等于inputstream.available()
的输入流中读取字符,但Netty会阻止代码,因为它在输入流的末尾需要\r\n
或\r
或\n
。
如何配置Netty以实现此功能?我应该使用Netty的哪些选项?
我使用textline=true
。
答案 0 :(得分:1)
根据您的描述,您正在从协议中读取一定数量的字符,其中每条消息(行)的长度相等。代码行Use textline = true
告诉Netty你将发送一个文本行协议,即一行可能是可变大小的,并以一系列字符结束,例如\r\n
。
将此行设置为false将不再需要Netty等待EOL终止符。但是,您需要实现某种形式的编解码器来读取您的协议。您的编解码器相当简单,因为它看起来所有行的长度都相同。
答案 1 :(得分:0)
如何将autoAppendDelimiter=false
添加到端点?也许代码示例会非常有用。