2012-01-11 3 views
1

나는 jstack을 위해 문서에서 발견 : 지정된 Java 프로세스 나 코어 파일 또는 원격 디버그 서버에 대한 Java 스레드의자바 프레임의 의미는 무엇입니까?

jstack을 인쇄 자바 스택 트레이스. 각 Java 프레임에 대해 전체 클래스 이름, 메소드 이름, 'bci'(바이트 코드 색인) 및 행 번호 (사용 가능한 경우)가 인쇄됩니다. -m 옵션을 사용하면 jstack은 모든 스레드의 Java 및 기본 프레임을 모두 'pc'(프로그램 카운터)와 함께 인쇄합니다. 각 기본 프레임에 대해 가장 가까운 기본 기호 인 'pc'(사용 가능한 경우 )가 인쇄됩니다. C++ 맹 글링 된 이름은 붕괴되지 않습니다. C++ 이름을 변형하려면이 명령의 출력을 C++ filt로 파이프 할 수 있습니다.

나는 프레임이 시각적 인터페이스의 요소라는 것을 알고 있지만,이 맥락에서는 틀린 것처럼 보입니까? Google에서 검색하면 시각적 요소에 대한 링크가 생성됩니다. 프레임이 스레딩에 관한 것 같습니다. 그것은 정의를 찾을 수 있습니까? 감사.

답변

3

여기서 "프레임"은 시각적 GUI 요소가 아닌 stack frame을 나타냅니다.

간단한 설명은 모든 메서드 호출이 로컬 변수/결과/반환 값이 저장되는 스택 프레임을 생성한다는 것입니다. 프로그램의 스택 프레임을 따라 가면 현재 호출 스택을 알 수 있습니다

관련 문제