<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    paulwong

    NIO概念

    NIO是新IO,與老IO相比,老IO是通過STREAM來發(fā)送CHARACTER,新IO是通過CHANNL 發(fā)送BUFFER;老IO對于多條鏈接需要啟動多個線程處理,新IO只需一條線程即可處理多條鏈接;新IO是事件驅(qū)動。


    客戶端,非SELECTOR模式:
    //打開一個CHANNEL
    SocketChannel socketChannel = SocketChannel.open();
    socketChannel.configureBlocking(false);
    socketChannel.connect(new InetSocketAddress("http://google.com", 80));

    //等待可寫狀態(tài)
    while(! socketChannel.finishConnect() ){
        //wait, or do something else    
    }

    //寫資料
    socketChannel.write(buf);


    客戶端,SELECTOR模式:
    //打開一個CHANNEL
    SocketChannel channel = SocketChannel.open();

    //新建一個SELECTOR
    Selector selector = Selector.open();

    channel.configureBlocking(false);

    //將SELECTOR注冊到CHANNEL中
    SelectionKey key = channel.register(selector, SelectionKey.OP_READ);


    while(true) {

      //查詢可用狀態(tài)
      int readyChannels = selector.select();

      //狀態(tài)不可用
      if(readyChannels == 0) continue;

    }

      //狀態(tài)可用
      Set<SelectionKey> selectedKeys = selector.selectedKeys();

      Iterator<SelectionKey> keyIterator = selectedKeys.iterator();

      while(keyIterator.hasNext()) {

        SelectionKey key = keyIterator.next();

        if(key.isAcceptable()) {
            // a connection was accepted by a ServerSocketChannel.

        } else if (key.isConnectable()) {
            // a connection was established with a remote server.

        } else if (key.isReadable()) {
            // a channel is ready for reading

        } else if (key.isWritable()) {
            // a channel is ready for writing
            
    //提交所需處理的代碼
        }

        //移除所有KEY
        keyIterator.remove();
      }

    posted on 2013-07-16 12:31 paulwong 閱讀(356) 評論(0)  編輯  收藏 所屬分類: J2SE性能優(yōu)化

    主站蜘蛛池模板: 亚洲首页国产精品丝袜| 天天摸天天碰成人免费视频| 午夜亚洲国产精品福利| 亚洲乱码一二三四区国产| 国产精品亚洲а∨无码播放| 免费精品国产自产拍观看| 毛片视频免费观看| 18禁无遮挡无码国产免费网站| a成人毛片免费观看| 成人在线免费视频| 久久亚洲色WWW成人欧美| 亚洲综合色区中文字幕| 337p日本欧洲亚洲大胆色噜噜| 亚洲级αV无码毛片久久精品| 亚洲精品视频在线看| 日本人的色道www免费一区| 中文字幕无码成人免费视频| 久久久久久国产精品免费无码| 欧洲人成在线免费| 在线观看人成视频免费无遮挡| 一区二区三区视频免费观看| 免费的黄网站男人的天堂| 亚洲av日韩av永久在线观看| 亚洲av无码偷拍在线观看| 亚洲AV无码一区二区三区久久精品 | 男人的天堂亚洲一区二区三区 | 久久精品国产精品亚洲| 四虎影视永久免费观看| 国产一精品一aⅴ一免费| 国产免费变态视频网址网站| 永久免费无码网站在线观看| 日本一区二区三区日本免费| 日韩午夜免费视频| 国产免费一区二区三区VR| 亚洲A丁香五香天堂网| 亚洲国产综合精品中文字幕 | 一级做a爰性色毛片免费| 一区二区三区免费高清视频| 成人免费av一区二区三区| 中国一级毛片免费看视频| 热久久这里是精品6免费观看|