Mina Basics 07-处理程序Handler

处理MINA发出的所有I / O事件。这个Handler接口是过滤器链末端完成的所有活动的中心。

IoHandler具有以下功能:

  • sessionCreated
  • sessionOpened
  • sessionClosed
  • sessionIdle
  • exceptionCaught
  • messageReceived
  • messageSent

sessionCreated事件

创建新连接时会触发Session Created事件。对于TCP,它是连接接受的结果,对于UDP,这是在收到UDP数据包时生成的。此函数可用于初始化会话属性,并为特定连接执行一次性活动。

此函数是从I / O处理器线程上下文调用的,因此应该以一种消耗最少时间的方式实现,因为同一个线程处理多个会话。

sessionOpened事件

打开连接时会调用会话打开事件。它总是在sessionCreated事件之后调用。如果配置了线程模型,则在I / O处理器线程以外的线程中调用此函数。

sessionClosed事件

当会话关闭时,会话已关闭事件将关闭。可以在此处执行现cash清理等会话清理活动。

sessionIdle事件

会话空闲时会触发Session Idle事件。 UDP传输不会调用此函数。

exceptionCaught事件

当用户代码或MINA抛出异常时,将调用此函数。如果是IOException,则关闭连接。

messageReceived事件

收到消息时会触发Message Received事件。这是应用程序的大部分处理发生的地方。您需要处理您期望的所有消息类型。

messageSent事件

只要发送了一条消息(即响应),就会触发Message Sent事件(调用IoSession.write())。

原文地址:https://www.cnblogs.com/fubinhnust/p/9943671.html