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

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

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

    ChenGen

    一切歸零,重新開始
    隨筆 - 13, 文章 - 10, 評論 - 21, 引用 - 0
    數據加載中……

    使用Sandstorm

    /**
    ?*?
    ?
    */

    package ?p2hp.datapool.main;

    import ?p2hp.datapool.handler.ReceiveStageHandler;
    import ?p2hp.datapool.message.HelloWorldMsg;
    import ?winseda.sandStorm.api.EventHandlerIF;
    import ?winseda.sandStorm.api.ManagerIF;
    import ?winseda.sandStorm.api.SinkIF;
    import ?winseda.sandStorm.api.StageIF;
    import ?winseda.sandStorm.main.Sandstorm;

    /**
    ?*?
    @author ?chengen
    ?
    */

    public ? class ?SandStormTest? {

    ????
    /**
    ?????*?
    @param ?args
    ?????
    */

    ????
    public ? static ? void ?main(String[]?args)? {

    ????????
    try ? {
    ????????????
    // ?create?an?instance?of?SandStorm
    ????????????Sandstorm?ss? = ? new ?Sandstorm();
    ????????????
    // ?get?the?managerIF?through?which?we?create?stages
    ????????????ManagerIF?mgr? = ?ss.getManager();
    ????????????
    // ?create?an?instance?of?a?EventHandlerIF?which?can?then?receive?and
    ????????????
    // ?process?messages
    ????????????EventHandlerIF?handler1? = ? new ?ReceiveStageHandler();
    ????????????
    // ?create?a?stage?use?ManagerIF
    ????????????mgr.createStage( " receivestage " ,?handler1,? null );
    ????????????
    // ?get?the?StageIF?of?the?stage?we?created?just?now?whose?name?is
    ????????????
    // ?'receiverstage'
    ????????????StageIF?receiveStage? = ?mgr.getStage( " receivestage " );
    ????????????
    // ?get?the?SinkIF?of?the?stage?we?created?just?now?and?then?we?use
    ????????????
    // ?this?SinkIF?to?send?messages?to?the?stage
    ????????????SinkIF?nextStageSink? = ?receiveStage.getSink();
    ????????????
    // ?send?1000?messages?to?the?stage?'receivestage'
    ???????????? for ?( int ?i? = ? 0 ;?i? < ? 1000 ;?i ++ )? {
    ????????????????
    // ?create?an?instance?of?the?message
    ????????????????HelloWorldMsg?msg? = ? new ?HelloWorldMsg( " message " ? + ?i);
    ????????????????System.out.println(
    " #send?message# " ? + ?msg);
    ????????????????Thread.sleep(
    500 );
    ????????????????
    // ?send?the?message?through?the?SinkIF
    ????????????????nextStageSink.enqueue(msg);
    ????????????}


    ????????}
    ? catch ?(Exception?e)? {
    ????????????
    // ?TODO:?handle?exception
    ????????????e.printStackTrace();
    ????????}

    ????}

    }


    /**
    ?*?
    ?
    */

    package ?p2hp.datapool.handler;

    import ?p2hp.datapool.message.HelloWorldMsg;
    import ?winseda.sandStorm.api.ConfigDataIF;
    import ?winseda.sandStorm.api.EventHandlerException;
    import ?winseda.sandStorm.api.EventHandlerIF;
    import ?winseda.sandStorm.api.QueueElementIF;
    import ?winseda.sandStorm.api.SinkIF;
    import ?winseda.sandStorm.api.StagesInitializedSignal;

    /**
    ?*?
    @author ?chengen
    ?
    */

    public ? class ?ReceiveStageHandler? implements ?EventHandlerIF? {

    ????
    private ?ConfigDataIF?config;

    ????
    /*
    ?????*?(non-Javadoc)
    ?????*?
    ?????*?@see?winseda.sandStorm.api.EventHandlerIF#destroy()
    ?????
    */

    ????
    public ? void ?destroy()? throws ?Exception? {
    ????????
    // ?TODO?Auto-generated?method?stub

    ????}


    ????
    /*
    ?????*?(non-Javadoc)
    ?????*?
    ?????*?@see?winseda.sandStorm.api.EventHandlerIF#handleEvent(winseda.sandStorm.api.QueueElementIF)
    ?????
    */

    ????
    public ? void ?handleEvent(QueueElementIF?elem)? throws ?EventHandlerException? {
    ????????
    // ?TODO?Auto-generated?method?stub
    ???????? if ?(elem? instanceof ?HelloWorldMsg)? {
    ????????????System.out.println(
    this .getClass()? + ? " ::get?message:: " ? + ?elem);
    ????????}

    ????}


    ????
    /*
    ?????*?(non-Javadoc)
    ?????*?
    ?????*?@see?winseda.sandStorm.api.EventHandlerIF#handleEvents(winseda.sandStorm.api.QueueElementIF[])
    ?????
    */

    ????
    public ? void ?handleEvents(QueueElementIF[]?elemarr)
    ????????????
    throws ?EventHandlerException? {
    ????????
    // ?TODO?Auto-generated?method?stub
    ???????? for ?( int ?i? = ? 0 ;?i? < ?elemarr.length;?i ++ )? {
    ????????????handleEvent(elemarr[i]);
    ????????}

    ????}


    ????
    /*
    ?????*?(non-Javadoc)
    ?????*?
    ?????*?@see?winseda.sandStorm.api.EventHandlerIF#init(winseda.sandStorm.api.ConfigDataIF)
    ?????
    */

    ????
    public ? void ?init(ConfigDataIF?config)? throws ?Exception? {
    ????????
    // ?TODO?Auto-generated?method?stub
    ???????? this .config? = ?config;
    ????????System.out.println(
    " ######receive?stage?initialized###### " );
    ????}


    }

    posted on 2006-10-12 11:28 ChenGen 閱讀(457) 評論(0)  編輯  收藏 所屬分類: SEDA


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲真人日本在线| 亚洲欧洲中文日韩av乱码| 亚洲欧美乱色情图片| 免费真实播放国产乱子伦| 中文在线免费看视频| 亚洲国产日韩女人aaaaaa毛片在线| 18禁超污无遮挡无码免费网站国产 | 理论片在线观看免费| 久久久青草青青亚洲国产免观| 在线观看的免费网站无遮挡| 亚洲va中文字幕| 久久亚洲精品国产精品黑人| 在线观看成人免费| 免费人成在线观看视频高潮| 亚洲人av高清无码| 亚洲五月激情综合图片区| 免费在线观看一级毛片| 日本最新免费网站| 中文字幕视频免费在线观看| 亚洲AV一二三区成人影片| 亚洲精品无码午夜福利中文字幕 | 亚洲人成毛片线播放| 国产黄色一级毛片亚洲黄片大全 | 久久亚洲中文字幕精品一区| 无码国产精品一区二区免费式影视| 男女猛烈激情xx00免费视频| 亚洲欧洲国产成人精品| 亚洲日本一区二区三区在线| 扒开双腿猛进入爽爽免费视频| 你是我的城池营垒免费看| 蜜臀亚洲AV无码精品国产午夜.| 亚洲网站在线免费观看| 久久精品国产精品亚洲人人 | 国产专区一va亚洲v天堂| 中文字幕影片免费在线观看| 成人免费无码H在线观看不卡| 亚洲精品乱码久久久久蜜桃| 亚洲美女一区二区三区| 国产精品亚洲а∨无码播放| 免费少妇a级毛片人成网| 最近2019中文字幕免费看最新 |