咖啡伴侶

          呆在上海
          posts - 163, comments - 156, trackbacks - 0, articles - 2

          sax,script包在android中的效率

          Posted on 2011-08-03 14:18 oathleo 閱讀(1506) 評論(0)  編輯  收藏
          和奇怪,調試模式下的SAX和script
          效率巨慢,而運行模式下,好很多,大概快5-10倍。

          另外script包會編譯一個print方法,這個過程耗時很多,嚴重影響效率
          去掉并做些優化后
          500條腳本,執行從1s縮減到200ms

          代碼精簡如下:
          RhinoScriptEngine.java
              Scriptable getRuntimeScope(ScriptContext ctxt) {
                  
          if (ctxt == null) {
                      
          throw new NullPointerException("null script context");
                  }

                  
          // we create a scope for the given ScriptContext
                  Scriptable newScope = new ExternalScriptable(ctxt, indexedProps);

                  
          // Set the prototype of newScope to be 'topLevel' so that
                  
          // JavaScript standard objects are visible from the scope.
                  newScope.setPrototype(topLevel);

                  
          // define "context" variable in the new scope
                  newScope.put("context", newScope, ctxt);

                  
          // define "print", "println" functions in the new scope
                  //去掉下面幾行
          //        Context cx = enterContext();
          //        try {
          //            cx.evaluateString(newScope, printSource, "print", 1, null);
          //        } finally {
          //            cx.exit();
          //        }
                  return newScope;
              }

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


          網站導航:
           
          主站蜘蛛池模板: 伽师县| 双流县| 兰考县| 岳池县| 普兰店市| 伊宁县| 健康| 万安县| 江门市| 邵东县| 许昌市| 凤台县| 嘉义县| 三亚市| 云和县| 山阳县| 桂平市| 南昌市| 抚远县| 营山县| 泗阳县| 黎平县| 三明市| 西充县| 东城区| 舞钢市| 屯昌县| 安康市| 金平| 原平市| 来安县| 博白县| 青神县| 安岳县| 鲁甸县| 高要市| 娄底市| 宿松县| 罗城| 米林县| 嵩明县|