> Java > java지도 시간 > Java에서 스레드 덤프를 사용하는 방법

Java에서 스레드 덤프를 사용하는 방법

PHPz
풀어 주다: 2023-05-01 20:19:05
앞으로
1623명이 탐색했습니다.

Explanation

1. ThreadDump는 Java 애플리케이션의 문제를 진단하는 데 사용되며, 메모리 누수를 찾고 교착 상태 스레드를 발견하는 데 사용할 수 있습니다.

2. 시스템은 전체 클래스 이름, 실행 방법, 소스 코드 줄 수 등을 포함하여 스레드, 스레드 실행 상태, 식별, 호출 및 기타 정보를 얻을 수 있습니다.

기능

다양한 운영 체제에서 사용할 수 있습니다.

다양한 Java 애플리케이션 서버에서 사용할 수 있습니다.

시스템 성능에 영향을 주지 않고 사용할 수 있습니다.

문제는 애플리케이션 코드에서 직접 찾을 수 있습니다.

인스턴스

public class JStack {
            public static void main(String[] args) throws Exception {
               ...
                    String pid = args[optionCount];
                    String params[];
                    if (locks) {
                        params = new String[] { "-l" };
                    } else {
                        params = new String[0];
                    }
                    runThreadDump(pid, params);
                ...
            }
            // Attach to pid and perform a thread dump
            private static void runThreadDump(String pid, String args[])
                    throws Exception {
                VirtualMachine vm = null;
                try {
                    vm = VirtualMachine.attach(pid);
                } catch (Exception x) {
                   ...
                }
                // Cast to HotSpotVirtualMachine as this is implementation specific
                // method.
                InputStream in = ((HotSpotVirtualMachine) vm)
                        .remoteDataDump((Object[]) args);
                // read to EOF and just print output
                byte b[] = new byte[256];
                int n;
                do {
                    n = in.read(b);
                    if (n > 0) {
                        String s = new String(b, 0, n, "UTF-8");
                        System.out.print(s);
                    }
                } while (n > 0);
                in.close();
                vm.detach();
            }
로그인 후 복사

위 내용은 Java에서 스레드 덤프를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:yisu.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿