jmap
是 Java 提供的一个命令行工具,用于生成堆转储(heap dump)或打印出堆的内存映射
jmap -heap
其中
是 Java 进程的进程 ID。运行此命令后,您将看到类似以下的输出:
Heap Configuration: ... MaxHeapSize = 4294967296 (4096.0MB) ...
要设置采样频率,您需要使用 -XX:HeapDumpOnOutOfMemoryError
和 -XX:HeapDumpPath
选项。-XX:HeapDumpOnOutOfMemoryError
选项表示在发生 OutOfMemoryError 时创建堆转储,而 -XX:HeapDumpPath
选项用于指定堆转储文件的保存路径。
然而,jmap
本身不提供直接设置采样频率的选项。要实现采样频率的设置,您可以使用 Java VisualVM、JProfiler、YourKit 等工具,这些工具可以连接到 Java 进程并提供采样功能。
例如,要使用 Java VisualVM 设置采样频率,请按照以下步骤操作:
- 打开 Java VisualVM。
- 在左侧的应用程序列表中,找到并双击您的 Java 进程。
- 切换到 “Sampler” 选项卡。
- 在 “Sampler” 选项卡中,您可以通过 “CPU” 或 “Memory” 选项卡设置采样频率。
请注意,这些工具可能需要额外的许可证才能使用其高级功能。