From: woojin Date: Sat, 20 Sep 2014 00:24:06 +0000 (+0900) Subject: THREAD ANALYSIS: show thread load value X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F55%2F27855%2F1;p=sdk%2Ftools%2Fdynamic-analyzer.git THREAD ANALYSIS: show thread load value show thread load value - modify thread load parsing routine to handle newest SystemLog format Change-Id: Iea5f3cf57d6001284c255ddc9ec8cb24757dbc79 Signed-off-by: woojin --- diff --git a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/thread/thread/ThreadPageThreadDataManager.java b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/thread/thread/ThreadPageThreadDataManager.java index 9a8be3a..56d7c8b 100644 --- a/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/thread/thread/ThreadPageThreadDataManager.java +++ b/org.tizen.dynamicanalyzer/src/org/tizen/dynamicanalyzer/ui/thread/thread/ThreadPageThreadDataManager.java @@ -45,6 +45,7 @@ import org.tizen.dynamicanalyzer.swap.channel.data.DataChannelConstants; import org.tizen.dynamicanalyzer.swap.logparser.LogPackage; import org.tizen.dynamicanalyzer.swap.logparser.Logs; import org.tizen.dynamicanalyzer.swap.model.data.LogData; +import org.tizen.dynamicanalyzer.swap.model.data.ProcessProfileData; import org.tizen.dynamicanalyzer.swap.model.data.SyncData; import org.tizen.dynamicanalyzer.swap.model.data.SystemData; import org.tizen.dynamicanalyzer.swap.model.data.ThreadData; @@ -379,6 +380,37 @@ public class ThreadPageThreadDataManager { String tid; int load; + ProcessProfileData [] processDataList = sysLog.getProcessProfileDataList(); + + for (int i = 0; i < processDataList.length; i++) { + loads = processDataList[i].getThreadLoad(); + String[] temp = loads.split(","); + int tempSize = temp.length; + double time; + for (int j = 0; j + 1 < tempSize; j += 2) { + try { + tid = temp[j]; + } catch (NumberFormatException nfe) { + Logger.error("parseLoad - tid parsing"); + break; + } + // if (null == findParentData(tid)) { + // continue; + // } + load = (int) (Double.parseDouble(temp[j + 1])); + time = Double.parseDouble(Long.toString(input.getTime())) + / TimelineConstants.MEGA_DOUBLE; + ThreadPageThreadDataEvent event = new ThreadPageThreadDataEvent( + ThreadPageThreadDataEvent.TYPE_LOAD, load, -1, time, tid, + String.valueOf(load) + + ThreadPageLabels.THREAD_CHART_ITEM_PERCENT, -1, + null); + pushEvent(event); + + } + } + hasUpdate = true; + // loads = sysLog.getThreadLoad(); // TODO SystemData interface changed. // // loads = input.get(LogCenterConstants.DEVICE_THREAD_LOAD_INDEX); // String[] temp = loads.split(","); @@ -422,6 +454,36 @@ public class ThreadPageThreadDataManager { int load; for (int i = 0; i < size; i++) { input = (SystemData) inputs.get(i); + ProcessProfileData [] processDataList = input.getProcessProfileDataList(); + + for (int j = 0; j < processDataList.length; j++) { + loads = processDataList[j].getThreadLoad(); + String[] temp = loads.split(","); + int tempSize = temp.length; + double time; + for (int k = 0; k + 1 < tempSize; k += 2) { + try { + tid = temp[k]; + } catch (NumberFormatException nfe) { + Logger.error("parseLoad - tid parsing"); + break; + } + // if (null == findParentData(tid)) { + // continue; + // } + load = (int) (Double.parseDouble(temp[k + 1])); + time = Double.parseDouble(Long.toString(input.getTime())) + / TimelineConstants.MEGA_DOUBLE; + ThreadPageThreadDataEvent event = new ThreadPageThreadDataEvent( + ThreadPageThreadDataEvent.TYPE_LOAD, load, -1, time, tid, + String.valueOf(load) + + ThreadPageLabels.THREAD_CHART_ITEM_PERCENT, -1, + null); + pushEvent(event); + + } + } + // loads = input.getThreadLoad(); // TODO SystemData interface changed. // String[] temp = loads.split(","); // int tempSize = temp.length;