关闭

如何避免使用try catch语句块,及性能分析

标签: sessionfilterexceptionbufferminaobject
1080人阅读 评论(1) 收藏 举报
分类:

那mina中的一个例子为例:

@Override
    public void filterWrite(NextFilter nextFilter, IoSession session,
            WriteRequest writeRequest) throws Exception {

        Object data = writeRequest.getMessage();

        if (data instanceof IoBuffer) {
            write(session, (IoBuffer) data);
        } else {
            throw new IllegalArgumentException(
                    "This filter should only buffer IoBuffer objects");
        }
//        按照的平时的方案。
//        try {
//            IoBuffer data = (IoBuffer) writeRequest.getMessage();
//            write(session, data);
//        } catch (ClassCastException e) {
//            throw new IllegalArgumentException(
//                    "This filter should only buffer IoBuffer objects");
//        }
    }


 

private void write(IoSession session, IoBuffer data) {
        IoBuffer dest = buffersMap.putIfAbsent(session,
                new IoBufferLazyInitializer(bufferSize));

        write(session, data, dest);
    }

 

 

更多。参见参见http://www.blogjava.net/stone2083/archive/2010/07/09/325649.html


 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1101233次
    • 积分:9437
    • 等级:
    • 排名:第1983名
    • 原创:207篇
    • 转载:37篇
    • 译文:0篇
    • 评论:67条
    最新评论