如何实现Netty的服务端Channel不支持写操作
发表于:2025-01-24 作者:千家信息网编辑
千家信息网最后更新 2025年01月24日,小编给大家分享一下如何实现Netty的服务端Channel不支持写操作,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!作为N
千家信息网最后更新 2025年01月24日如何实现Netty的服务端Channel不支持写操作作为Netty的服务端Channel,即NioServerSocketChannel,它的职责就是负责监听ACCEPT事件,当有客户端连接到服务端时,NioServerSocketChannel负责读取这个ACCEPT请求. 既然作为一个Channel,都是支持读和写操作的.那么这个 NioServerSocketChannel是不支持写操作的,当你想通过这个NioServerSocketChannel向外部写数据的时候,会在Netty内部抛出一个异常,Netty也会捕获这个异常,并不会把这个异常抛出给程序.
以上代码,当NioServerSocketChannel完成端口绑定之后,会回调channelActive,我们在此方法中调用writeAndFlush方法,向外部写数据,当然此时并没有任何外部的连接,但是也不影响我们向外部写数据.
继续调用到unsafe.write方法
而NioServerSocketChanenl重写了filterOutboundMessage方法
直接抛出异常,不允许写操作.
小编给大家分享一下如何实现Netty的服务端Channel不支持写操作,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
@Overridepublic void channelActive(ChannelHandlerContext ctx) throws Exception { ctx.writeAndFlush("this is test1"); super.channelActive(ctx);}
最终这个写操作会调用到HeadContext中的write方法
@Overridepublic void write(ChannelHandlerContext ctx, Object msg, ChannelPromise promise) { unsafe.write(msg, promise);}
以上是"如何实现Netty的服务端Channel不支持写操作"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
支持
服务
方法
数据
篇文章
内容
不怎么
事件
代码
大部分
客户
客户端
就是
时候
更多
此方法
知识
程序
端口
职责
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库建立一个学生基本情况表
免备案轻量服务器
软件开发中的原型法
学生网络安全常识
数据库审计开源
庆余年安卓服务器
河南省网络技术专升本分数线
网络安全进校园要点
nosql数据库实践考试题库
关于国家的网络安全
北京依云互联网科技有限公司
芜湖苹果软件开发流程
曙光服务器虚拟化费用
软件开发著作权是什么意思
上海彦骏互联网科技有限公司
伪服务器激活id
数据库系统 设计实现pdf
克尔苏加德服务器
管理100台服务器
软件开发方案分解
常见的计算机网络安全
jsp数据库用户注册
提 网络安全防护
重庆市数据库
金豪网络技术有限公司
金赋科技互联网政务服务探路人
软件开发开发票的明细是什么
欧盟医疗器械数据库
网络安全深入解读
淮安怪痘网络技术有限公司