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

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

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

    隨筆-50  評(píng)論-55  文章-8  trackbacks-0
    解決并發(fā)大數(shù)據(jù)量阻塞之道的重要思想是:
    利用多線程將數(shù)據(jù)接收和數(shù)據(jù)處理兩塊業(yè)務(wù)分開。
    1、數(shù)據(jù)接收
    public class MessageReceiver{
    //建立數(shù)據(jù)緩存區(qū)
    private List messageList = new ArrayList();

    //添加消息至數(shù)據(jù)緩沖區(qū)
    public? void addMessage(ESBInput inputMessage) {
    ??synchronized(messageList) {
    ??? messageList.add(inputMessage);
    ??? messageList.notifyAll();
    ??}
    ?}
    //并發(fā)數(shù)據(jù)接收入口,調(diào)用添加數(shù)據(jù)方法,而不是直接操作inputMessage,對(duì)其解析或者別的操作,不然極可能造成阻塞
    public void handleMessage(Input inputMessage) {
    ?????addMessage(inputMessage);
    ?}
    //從數(shù)據(jù)緩沖區(qū)取數(shù)據(jù),它應(yīng)該被另外一個(gè)線程調(diào)用
    public List getMessageList() {
    ??List _processList = new ArrayList();
    ??try {
    ??? synchronized (messageList) {
    ????? while (messageList.size() == 0) {
    ???? messageList.wait();
    ????? }
    ????? _processList.addAll(messageList);
    //清空緩存區(qū)
    ????? messageList.clear();
    ??? }
    ??}
    ??catch (Exception ex) {
    ???ex.printStackTrace();
    ??}
    ??return _processList;
    ?}
    }
    2、數(shù)據(jù)處理
    //線程
    public class MessageProcessThread extends Thread {
    MessageReceiver receiver;
    public MessageProcessThread (MessageReceiver receiver){
    this.receiver=receiver;
    }
    public void run() {
    ?? while (true) {
    ?? List list = receiver.getMessageList();
    ?? while (iter.hasNext()) {
    ??? //do what you want....
    ? handleMessage((Input)list .next());
    ????? try {
    ???sleep (100);
    ?? }
    ?? catch (Exception ex) {
    ??? ?}
    ?? }
    ?}
    }
    public handleMessage(Input messsage){
    ?? //處理消息
    }
    posted on 2009-01-06 10:28 蔣家狂潮 閱讀(963) 評(píng)論(0)  編輯  收藏 所屬分類: Basic
    主站蜘蛛池模板: 日本a级片免费看| 丁香花免费高清视频完整版| 国产精品va无码免费麻豆 | 亚洲韩国精品无码一区二区三区 | 亚洲日韩AV一区二区三区中文| 最近在线2018视频免费观看| 久久99亚洲网美利坚合众国 | 精品免费国产一区二区| 亚洲色精品三区二区一区| 扒开双腿猛进入爽爽免费视频| 亚洲三级在线免费观看| 好吊妞788免费视频播放| 亚洲精品无码永久在线观看男男 | 久久久精品午夜免费不卡| 亚洲AV无码久久精品色欲| 久久午夜伦鲁片免费无码| 亚洲六月丁香六月婷婷蜜芽| 免费无码AV片在线观看软件| 精品久久久久亚洲| 国产AV无码专区亚洲AV漫画| 中文字幕免费不卡二区| 亚洲人成伊人成综合网久久| 国产片免费在线观看| 国产黄在线播放免费观看| 亚洲人成网址在线观看 | 57PAO成人国产永久免费视频 | 国产精品亚洲精品日韩动图 | 亚洲国产成人片在线观看| 免费A级毛片无码A∨免费| 亚洲无人区码一二三码区别图片 | 免费看小12萝裸体视频国产| 久久免费国产精品| 亚洲精品美女在线观看| 国产嫩草影院精品免费网址| 精品一区二区三区高清免费观看 | 日本免费人成在线网站| 亚洲国产精品成人AV在线| 国产亚洲av片在线观看播放| 国色精品卡一卡2卡3卡4卡免费| 色网站在线免费观看| 亚洲国产综合专区电影在线|