【发布时间】:2015-02-21 17:26:14
【问题描述】:
我想在服务器关闭时强制超时异常(网络中断)。
我试试这个配置:
pipeline.addLast("readTimeoutHandler", new ReadTimeoutHandler(5));
pipeline.addLast("writeTimeoutHandler", new WriteTimeoutHandler(5));
// Add the text line codec combination first,
pipeline.addLast("framer", new DelimiterBasedFrameDecoder(8192, Delimiters.lineDelimiter()));
// Add the encoder and decoder are static as these are sharable
pipeline.addLast("decoder", new StringDecoder());
pipeline.addLast("encoder", new StringEncoder());
// Enable stream compression
pipeline.addLast("deflater", new JZlibEncoder(ZlibWrapper.GZIP));
pipeline.addLast("inflater", new JZlibDecoder(ZlibWrapper.GZIP));
pipeline.addLast(clientHandler);
但是当我关闭 TCP 服务器时,客户端可以尝试使用channel.writeAndFlush(tempMsg + AbstractSocketInitializer.ESCAPE_CHAR); 发送消息
客户端从不抛出异常。
如何强制客户端在尝试写入频道但从未收到响应时抛出异常?
【问题讨论】: