2013-07-16 4 views
0

js 코드가 그래픽없이 배열 요소 만 계산하는 경우 추적 프로필을 조사 할 때 html의 Javascript 코드가 libwebcore.so에서 실행되는 것 같습니다. 그러나 js 코드에 console.log를 추가했을 때 프로필에 libdvm.so의 명령 수가 증가하는 것으로 나타났습니다. 나는이 결과가 Dalvik이 커널에서 어떤 메시지를 듣거나 듣고 뭔가를한다는 것을 알 수 있다고 생각한다. 내 추측이 맞습니까? "adb logcat"터미널에서 js 코드의 "console.log"메시지를 확인할 수 있습니다. 달빅이이 메시지와 상호 작용합니까 ??Dalvik은 로그/디버그 메시지를 수신합니까?

감사합니다.

답변

2

Dalvik는 logcat 출력을 읽지 않습니다. VM과 로그 간의 유일한 상호 작용은 stdio 변환 (setprop log.redirect-stdio true)을 활성화 한 다음 stdout 또는 stderr에 쓰는 것입니다. 그러나 이것이 현재 일어나고있는 것입니다.

Javascript 로깅 구현이 어떤 이유로 Java로 다시 호출되면 Java 코드의 활동이 증가합니다.

+0

감사합니다. 내 첫 번째 추측은 질문에 잘못되었다. 그러나 언급했듯이 javascript 로깅은 Dalvik의 명령어 카운트에 영향을주는 Java를 호출 할 수 있습니다. 그러나, 정확하게 증명하거나 확인하는 방법을 모르겠습니다. 어쨌든, 다시 한번 감사드립니다. – joshsuihn

관련 문제