Mina IoHandler 事件触发机制

原文地址:Mina IoHandler(Apache Mina user guide Chapter8 Handler)

所有处理I / O事件都由Mina触发。接口所有活动中心的完成,在过滤器链结束之后

  • IoHandler有如下方法:
  • · sessionCreated
  • · sessionOpened
  • · sessionClosed
  • · sessionIdle
  • · exceptionCaught
  • · messageReceived
  • · messageSent

1.1.1. sessionCreated事件

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

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

1.1.2. sessionOpened事件

打开连接时,Session会话打开事件调用。它总是sessionCreated事件创建之后被调用。如果一个配置上网线程模型这个函数被用于调用线程以外的I / O处理器线程。

1.1.3. sessionClosed事件

当Session关闭时,session会话的close事件被关闭。Session会话清理活动比如现清理可以执行。

1.1.4. sessionIdle事件

一个会话变得空闲时,触发会话空闲事件。这个函数不执行UDP传输。

1.1.5. exceptionCaught事件

由用户代码或Mina抛出异常时这个函数被调用。如果异常时一个IOException,则连接被关闭

1.1.6. messageReceived事件

消息被接收到时,消息接收事件触发。这就是大多数应用程序需要处理的地方。你需要关注所有你预期的消息类型。

1.1.7. messageSent事件

无论何时,当消息即响应发送时,消息发送事件触发(调用IoSession.write())。


你可能感兴趣的:(Mina,Apache,Mina)