목차
jmap 명령 소개
jmap命令参数
-heap
-histo[:live]
-clstats
-finalizerinfo
-dump:[live,]format=b,file=
-F
명령 매개변수 설명:
Java java지도 시간 Java에서 jmap 명령을 사용하는 방법은 무엇입니까?

Java에서 jmap 명령을 사용하는 방법은 무엇입니까?

Apr 20, 2023 pm 10:52 PM
java

jmap 명령 소개

jmap(Java Virtual Machine 메모리 맵)은 JDK에서 제공하는 명령줄 도구로, Java 가상 머신의 힙 덤프 스냅샷 덤프 파일을 생성할 수 있습니다. 또한 jmap 명령은 공간 사용량, 현재 사용되는 가비지 수집기, 생성 상태 등과 같은 실행 완료 대기열, Java 힙 및 메서드 영역에 대한 자세한 정보도 볼 수 있습니다.

jinfo 명령과 마찬가지로 Windows 시스템에서의 사용에는 여전히 몇 가지 제한 사항이 있습니다. dbgeng.dll이 없는 Windows 시스템에서 jinfo 명령이 제대로 작동하려면 Windows용 디버깅 도구를 설치해야 하며 PATH 환경 변수에 jvm.dll의 위치가 포함되어야 합니다. dbgeng.dll的Windows系统中,必须安装用于Windows的调试工具才能使jinfo命令正常工作,PATH环境变量应该包含jvm.dll的位置。

jmap命令参数

命令语法:

jmap [options] pid
로그인 후 복사

命令参数说明:

option:jmap命令的可选参数。如果没有指定这个参数,jinfo命令会显示Java虚拟机进程的内存映像信息,如下图:

Java에서 jmap 명령을 사용하는 방법은 무엇입니까?

pid:要打印配置信息的Java虚拟机的进程ID。

想要要获取运行的Java虚拟机进程的列表,可以使用ps命令(Linux系统中)或tasklist命令(Windows系统中),如果Java虚拟机进程没有在单独的docker实例中运行,可以使用jps命令。

option都有哪些参数呢?我们来看一下。

-heap

显示Java堆的如下信息:

  • 被指定的垃圾回收算法的信息,包括垃圾回收算法的名称和垃圾回收算法的详细信息。

  • 堆的配置信息,可能是由命令行选项指定,或者由Java虚拟机根据服务器配置选择的。

  • 堆的内存空间使用信息,包括分代情况,每个代的总容量、已使用内存、可使用内存。如果某一代被继续细分(例如,年轻代),则包含细分的空间的内存使用信息。

比如:

Java에서 jmap 명령을 사용하는 방법은 무엇입니까?

-histo[:live]

显示Java堆中对象的统计信息,包括:对象数量、占用内存大小(单位:字节)和类的完全限定名。比如:

Java에서 jmap 명령을 사용하는 방법은 무엇입니까?

要获得某个对象的大小,可以将其总大小除以该对象类型的数量。如果指定了live参数,则只计算活动的对象。比如:

Java에서 jmap 명령을 사용하는 방법은 무엇입니까?

-clstats

显示Java堆中元空间的类加载器的统计信息,包括:

class_loader:当Java虚拟机运行时,类加载器对象的地址
classes:已加载类的数量
bytes:该类加载器加载的所有类的元数据所占的字节数
parent_loader:父类加载器对象的地址,如果没有显示null
alive:是否存活的标识,表示类加载器对象是否将被垃圾回收。
type:该类加载器的类名。

比如:

Java에서 jmap 명령을 사용하는 방법은 무엇입니까?

-finalizerinfo

显示在F-Queue中等待Finalizer线程执行finalize方法的对象。比如:

Java에서 jmap 명령을 사용하는 방법은 무엇입니까?

-dump:[live,]format=b,file=

生成Java虚拟机的堆转储快照dump文件。具体说明如下:

  • live参数是可选的,如果指定,则只转储堆中的活动对象;如果没有指定,则转储堆中的所有对象。

  • format=b表示以hprof二进制格式转储Java堆的内存。

  • file=<filename></filename>用于指定快照dump文件的文件名。

比如:

Java에서 jmap 명령을 사용하는 방법은 무엇입니까?

-F

强制模式。如果指定的pid没有响应,可以配合-dump-histo

jmap 명령 매개변수

Java에서 jmap 명령을 사용하는 방법은 무엇입니까?명령 구문:

rrreee

명령 매개변수 설명:

option: jmap 명령의 선택적 매개변수입니다. 이 매개변수를 지정하지 않으면 jinfo 명령은 아래와 같이 Java Virtual Machine 프로세스의 메모리 이미지 정보를 표시합니다.

🎜Java의 jmap 명령 사용 방법🎜🎜pid: 구성 정보를 인쇄하기 위한 Java 가상 머신의 프로세스 ID입니다. 🎜🎜실행 중인 JVM(Java Virtual Machine) 프로세스 목록을 얻으려면 ps 명령(Linux 시스템) 또는 tasklist 명령(Windows 시스템)을 사용할 수 있습니다. JVM(Java Virtual Machine) 프로세스가 별도의 Docker 인스턴스에서 실행되고 있지 않은 경우 jps 주문을 사용할 수 있습니다. 🎜🎜옵션의 매개변수는 무엇인가요? 한 번 보자. 🎜🎜-heap🎜🎜Java 힙에 대한 다음 정보를 표시합니다. 🎜
  • 🎜가비지 수집 알고리즘의 이름과 가비지 수집 알고리즘의 이름을 포함하여 지정된 가비지 수집 알고리즘에 대한 정보 가비지 수집 알고리즘 세부 정보의 수입니다. 🎜
  • 🎜힙 구성 정보는 명령줄 옵션으로 지정하거나 서버 구성을 기반으로 Java 가상 머신에서 선택할 수 있습니다. 🎜
  • 🎜세대별 세대 상태, 총 용량, 사용된 메모리, 사용 가능한 메모리 등을 포함한 힙 메모리 공간 사용량 정보입니다. 세대가 더욱 세분화되는 경우(예: Young Generation), 세분화된 공간에 대한 메모리 사용량 정보를 포함합니다. 🎜
🎜예: 🎜🎜Java의 jmap 명령 🎜🎜-histo[:live]🎜🎜 사용 방법: 객체 수, 점유된 메모리 크기(단위: 바이트) 및 클래스의 정규화된 이름을 포함하여 Java 힙에 있는 객체의 통계 정보를 표시합니다. 예: 🎜🎜Java의 jmap 명령 사용 방법🎜🎜얻으려면 특정 개체의 전체 크기를 해당 개체 유형의 수로 나눈 개체의 크기입니다. live 매개변수가 지정된 경우 라이브 개체만 계산됩니다. 예: 🎜🎜Java의 jmap 명령 사용 방법🎜🎜-clstats 🎜 🎜다음을 포함하여 Java 힙의 메타공간에 있는 클래스 로더의 통계를 표시합니다. 🎜🎜class_loader: Java 가상 머신이 실행 중일 때 클래스 로더 객체의 주소
classes: 로드된 클래스 수bytes: 이 클래스 로더가 로드한 모든 클래스의 메타데이터가 차지하는 바이트 수
parent_loader: null가 표시되지 않는 경우 상위 클래스 로더 객체의 주소입니다.
alive: 클래스 로더 객체가 가비지 수집되는지 여부를 나타내는 플래그입니다.
유형: 클래스 로더의 클래스 이름입니다. 🎜🎜예: 🎜🎜Java의 jmap 명령 사용 방법🎜🎜 - finalizerinfo🎜🎜 F-Queue에서 Finalizer 스레드가 finalize 메서드를 실행하기를 기다리고 있는 객체를 표시합니다. 예: 🎜🎜Java의 jmap 명령 사용 방법🎜🎜-dump : [live,]format=b,file=🎜🎜Java Virtual Machine의 힙 덤프 스냅샷 덤프 파일을 생성합니다. 구체적인 지침은 다음과 같습니다. 🎜
  • 🎜live 매개변수를 지정하면 힙의 활성 개체만 덤프됩니다. 그렇지 않은 경우 지정되면 힙의 모든 개체가 덤프됩니다. 🎜
  • 🎜format=b는 Java 힙 메모리를 hprof 바이너리 형식으로 덤프하는 것을 의미합니다. 🎜
  • 🎜file=<filename></filename>은 스냅샷 덤프 파일의 파일 이름을 지정하는 데 사용됩니다. 🎜
🎜예: 🎜🎜Java의 jmap 명령 🎜🎜-F🎜🎜 강제 모드 사용 방법입니다. 지정된 pid가 응답하지 않으면 -dump 또는 -histo와 함께 사용할 수 있습니다. 이 모드에서는 라이브 매개변수가 지원되지 않습니다. 예: 🎜🎜🎜🎜🎜-h 및 -help🎜🎜는 jinfo 명령에 대한 도움말 정보를 표시합니다. 🎜

위 내용은 Java에서 jmap 명령을 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

자바의 완전수 자바의 완전수 Aug 30, 2024 pm 04:28 PM

Java의 완전수 가이드. 여기서는 정의, Java에서 완전 숫자를 확인하는 방법, 코드 구현 예제에 대해 논의합니다.

자바의 웨카 자바의 웨카 Aug 30, 2024 pm 04:28 PM

Java의 Weka 가이드. 여기에서는 소개, weka java 사용 방법, 플랫폼 유형 및 장점을 예제와 함께 설명합니다.

Java의 스미스 번호 Java의 스미스 번호 Aug 30, 2024 pm 04:28 PM

Java의 Smith Number 가이드. 여기서는 정의, Java에서 스미스 번호를 확인하는 방법에 대해 논의합니다. 코드 구현의 예.

Java Spring 인터뷰 질문 Java Spring 인터뷰 질문 Aug 30, 2024 pm 04:29 PM

이 기사에서는 가장 많이 묻는 Java Spring 면접 질문과 자세한 답변을 보관했습니다. 그래야 면접에 합격할 수 있습니다.

Java 8 Stream foreach에서 나누거나 돌아 오시겠습니까? Java 8 Stream foreach에서 나누거나 돌아 오시겠습니까? Feb 07, 2025 pm 12:09 PM

Java 8은 스트림 API를 소개하여 데이터 컬렉션을 처리하는 강력하고 표현적인 방법을 제공합니다. 그러나 스트림을 사용할 때 일반적인 질문은 다음과 같은 것입니다. 기존 루프는 조기 중단 또는 반환을 허용하지만 스트림의 Foreach 메소드는이 방법을 직접 지원하지 않습니다. 이 기사는 이유를 설명하고 스트림 처리 시스템에서 조기 종료를 구현하기위한 대체 방법을 탐색합니다. 추가 읽기 : Java Stream API 개선 스트림 foreach를 이해하십시오 Foreach 메소드는 스트림의 각 요소에서 하나의 작업을 수행하는 터미널 작동입니다. 디자인 의도입니다

Java의 날짜까지의 타임스탬프 Java의 날짜까지의 타임스탬프 Aug 30, 2024 pm 04:28 PM

Java의 TimeStamp to Date 안내. 여기서는 소개와 예제와 함께 Java에서 타임스탬프를 날짜로 변환하는 방법에 대해서도 설명합니다.

캡슐의 양을 찾기위한 Java 프로그램 캡슐의 양을 찾기위한 Java 프로그램 Feb 07, 2025 am 11:37 AM

캡슐은 3 차원 기하학적 그림이며, 양쪽 끝에 실린더와 반구로 구성됩니다. 캡슐의 부피는 실린더의 부피와 양쪽 끝에 반구의 부피를 첨가하여 계산할 수 있습니다. 이 튜토리얼은 다른 방법을 사용하여 Java에서 주어진 캡슐의 부피를 계산하는 방법에 대해 논의합니다. 캡슐 볼륨 공식 캡슐 볼륨에 대한 공식은 다음과 같습니다. 캡슐 부피 = 원통형 볼륨 2 반구 볼륨 안에, R : 반구의 반경. H : 실린더의 높이 (반구 제외). 예 1 입력하다 반경 = 5 단위 높이 = 10 단위 산출 볼륨 = 1570.8 입방 단위 설명하다 공식을 사용하여 볼륨 계산 : 부피 = π × r2 × h (4

PHP vs. Python : 차이점 이해 PHP vs. Python : 차이점 이해 Apr 11, 2025 am 12:15 AM

PHP와 Python은 각각 고유 한 장점이 있으며 선택은 프로젝트 요구 사항을 기반으로해야합니다. 1.PHP는 간단한 구문과 높은 실행 효율로 웹 개발에 적합합니다. 2. Python은 간결한 구문 및 풍부한 라이브러리를 갖춘 데이터 과학 및 기계 학습에 적합합니다.

See all articles