Java 的 G1 垃圾收集器 (G1GC) 中的类卸载

2024-02-17

在Java 6中我们曾经使用下面的GC配置来防止Perm GenOutOfMemoryException多次重新部署我们的应用程序后:

-XX:+UseConcMarkSweepGC -XX:+CMSClassUnloadingEnabled

我们正在转向 Java 7,并希望使用新的 G1 GC,据我所知,它将类从 Java 内存中的 PermGen 移动到本机内存。

是否有一些标志可以卸载未使用的类?


G1 在 Full GC 期间执行类卸载,因此您不需要指定任何参数来启用此操作。

您可以使用以下命令亲自查看-XX:+TraceClassUnloading争论。

另外,请查看 HotSpot GC 邮件列表中的此电子邮件线程:G1GC 中的错误,当代码缓存已满时,它会执行 Full GC,从而导致过度杀伤 http://mail.openjdk.java.net/pipermail/hotspot-gc-use/2013-May/001548.html。他们相当广泛地讨论了 G1 中的类卸载。总而言之,您可以使用-noclassgc如果您看到类卸载问题,但通常 G1 中的类卸载没有问题。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java 的 G1 垃圾收集器 (G1GC) 中的类卸载 的相关文章

  • SWIG 类型映射 uint8_t* 从 C/C++ 到 java.nio.ByteBuffer

    我正在尝试将输入和输出缓冲区从 C 传递给 java 类 出于效率原因 我需要使用 ByteBuffer 这两个缓冲区都是在 C 部分中分配的 我需要将它们传递给一个 java 函数 该函数将使用输入缓冲区进行一些计算并将结果写入输出缓冲区
  • Java简单加密

    我想加密存储在磁盘上的文本 配置 文件 尝试使用DES http en wikipedia org wiki Data Encryption Standard加密 我在客户端计算机上遇到了致命错误 后来我发现该算法无法处理重音字符 我怀疑这
  • Java:BufferedInputStream 的 available() 方法存在问题

    我正在处理以下代码 用于将大文件拆分为一组较小的文件 FileInputStream input new FileInputStream this fileToSplit BufferedInputStream iBuff new Buff
  • SimpleDateFormat 无法正确处理 DD

    我正在尝试获得这样的格式 2013 06 15 17 45 我在代码中执行以下操作 Date d new Date SimpleDateFormat ft new SimpleDateFormat YYYY MM DD HH mm Stri
  • BigDecimal 中 Divide 方法的 Scale()

    new BigDecimal 37146555 53880000 divide new BigDecimal 1000000 scale 这返回10 但根据API divide method 返回一个 BigDecimal 其值为 这个 除
  • AES BadPaddingException

    如果我使用错误的密钥或错误的盐进行解密 则会引发 BadPaddingException 我希望返回一个不正确的字符串 doFinal 导致解密方法出现异常 信息 This is just an example Unfug S F V s
  • Eclipse 内容协助无法在枚举常量参数列表中工作

    使用 eclipse 当我输入以下内容时 public enum Foo A Integer private final Integer integer private Foo Integer integer this integer in
  • IntelliJ Idea,如何从控制台删除java文件目录?

    当您运行文件时 它会打开控制台窗口 并且一直在顶部显示该文件所在的目录 这非常令人恼火 因为现在 为了将其他行与目录混合分开 我必须在启动任何 System out println 命令之前使用 n C Program FILEs 我想摆脱
  • 带有 @Scheduled Spring 注释的方法的切入点

    我想要一个带有注释的方法的 AspectJ 切入点 Scheduled 尝试了不同的方法但没有任何效果 1 Pointcut execution org springframework scheduling annotation Sched
  • 使用 Thymeleaf 时我们应该删除 HTML 属性吗?

    我正在研究 Thymeleaf 发现几乎所有示例中都有 Thymeleaf 的标签值以及标准 HTML 值 例如 这些
  • Android 防火墙与 VpnService

    我正在尝试使用 BS 项目的 VpnService 为 Android 实现一个简单的防火墙 我选择 VpnService 因为它将在非 root 设备上运行 它将记录连接并让您过滤连接 基于IP 有一个应用程序可以做到这一点 因此这是可能
  • 当用户使用相同的凭据登录两次时如何使用户会话无效

    我正在使用带有 Richfaces 和 Facelets 的 JSF 1 2 我有一个应用程序 其中包含许多会话范围的 Bean 和一些应用程序 Bean 假设用户使用 Firefox 登录 创建一个会话 ID A 然后他打开 Chrome
  • Java中的运算符重载和覆盖

    运算符重载和运算符重写有什么区别 它们在继承和控制台程序中是否相同 Java 不支持运算符重载和重写 检查以下引用自的描述 http java sun com docs white langenv Simple doc2 html http
  • 在 Java/GWT 中解析用户时间输入

    解析用户在 GWT 中的文本字段中键入的时间的最佳方法是什么 默认时间格式要求用户完全按照区域设置指定的时间格式输入时间 我想要更加灵活 因为用户可以通过多种不同的方式输入时间 例如 8 8p 8pm 8 15pm 13 15 1315 1
  • 飞碟 - html 实体未呈现

    我正在使用 Flying saucer lib 生成 pdf 但我对一些 html 实体有问题 我已经在寻找解决方案 我在这个论坛和其他地方找到了很多提示 但仍然存在问题 我尝试过这种方法 http sdtidbits blogspot c
  • 为什么我的 Java 路径中添加了“L”?

    我在我的类路径中加载了一个 jar 在 iReport 中 如果重要的话 我确信它具有所需的方法 但是当我尝试测试连接 从而调用该 jar 时 我得到一个 java lang NoSuchMethodError 说它正在引用班上 Lorg
  • JSF - 实施受限页面过滤器

    我正在关注 BalusC 的回答JSF 2 0 如何获取在浏览器地址栏中输入的 URL https stackoverflow com questions 4105263 jsf 2 0 how to get the url that is
  • 如何使用 Kafka 发送大消息(超过 15MB)?

    我发送字符串消息到Kafka V 0 8使用 Java Producer API 如果消息大小约为 15 MB 我会得到MessageSizeTooLargeException 我尝试过设置message max bytes到 40 MB
  • Java:如何检测(并更改?)System.console 的编码?

    我有一个在控制台上运行的程序 其变音符号和其他特殊字符在 Mac 上以 的形式输出 这是一个简单的测试程序 public static void main String args System out println h h System
  • 是什么让热部署成为“难题”?

    在工作中 我们经常遇到这样的问题 永久代内存不足 http www jroller com agileanswers entry preventing java s java lang例外 团队负责人认为这是 JVM 中的一个错误 与代码的

随机推荐

  • v-if 在 DIV 上但总是使用 Vue.js 显示其内容?

    使用 Vue js 我需要切换父级 div 但是always显示子 div div class parent div class child Child should always be visible div div 据我所知 这对于 V
  • 使用 JAXB 从未编组的 java 对象中获取 xml 元素名称

    我有田地带注释的 with XmlElement name xxx 在我的 Java 模型中 有没有办法以编程方式获取 xml 元素名称 假设我们有带注释的实体 XmlRootElement public class Product Str
  • PrimaryContext 和 UserPrincipal 如何知道密码何时过期?

    我有一个UserPrincipal具有很多属性的对象 但我找不到密码过期日期的属性 如何才能做到这一点 这是我能想到的最简单的方法 using System DirectoryServices using System DirectoryS
  • R mlr3 创建TaskregrST 重复行?

    我有一个名为 tab mlr 的数据框 其中包含 788 行中约 19 个特征的坐标 str tab mlr 该天体有 21 个变量的 788 个观测值 其中 2 个变量为纬度和经度 我创建一个像这样的 sf 对象 data mlr lt
  • Inno Setup:选择组件的功能

    我有一个小问题 我需要当您选择一个或两个组件时显示一个页面 但其他的并不是只用单一的组件似乎就有效果 我留下了我正在工作的代码 Setup AppName My Program AppVerName My Program v 1 2 Def
  • Javascript + HTML5 本地存储 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 所以我正在寻找一个关于 localstorage 的好的速成课程 并用 Javascript 与之交互
  • jQuery - :not() 中的多个选择器?

    我似乎无法进行以下工作 input not type radio type checkbox live click function alert You haven t clicked a radio or checkbox 尝试了几种不同
  • 如何使用moment js和angularjs获取子午线(上午/下午)

    我有一个关于 Moments js 库的问题 我有一个 AngularJS 中的应用程序 其中有六个选择元素 用于年 月 日 小时 分钟和上午 下午格式 我使用以下格式 moment 来构建 m format 日期 YYYY MM DD h
  • 使用 UpdateChildValues 从 Firebase 中删除

    我正在尝试同时从 Firebase 数据库中的多个位置删除数据 The Firebase 文档 https firebase google com docs database ios save data state 删除数据的最简单方法是在
  • 如何设置 $docroot 来为我提供我想要的路径

    我该如何定义 docroot路径 这样我就可以输入我自己的路径 我有代码 docroot getenv DOCUMENT ROOT 当我将它与我的 index php 结合使用时 索引 php docroot getenv DOCUMENT
  • 在 protobuf 中使用 int32 的原因

    在 gpb proto2 标量类型的描述中 https developers google com protocol buffers docs proto scalar https developers google com protoco
  • 以编程方式将谷歌设置为主屏幕自定义启动器中的搜索栏

    我正在创建 我自己的启动器 In that case I want to put我的主屏幕中的快速搜索栏 即 Google now 启动器 我怎样才能做到这一点 我已经浏览了多个线程但没有找到任何相关答案 我不想展示widget picke
  • 等待 TaskEx.Delay

    我正在使用 HttpListener 和 Async CTP class HttpServer IDisposable HttpListener listener CancellationTokenSource cts public voi
  • 请求沙盒测试者用户 ID 的 Apple 验证电子邮件

    我在获取我在 iTunesConnect 中创建的用于购买非消耗性产品的测试用户沙箱 ID 时遇到问题 创建 ID 后我等了一天才尝试使用它们 首先 我根据设备上的 Settings iTunes App Store 确保没有 ID 登录
  • 屏幕更改后的默认 UIAccessibilityElement

    有什么方法可以决定哪个元素首先获得焦点 我尝试在以下方法中使用第二个参数 UIAccessibilityPostNotification UIAccessibilityLayoutChangedNotification element 但没
  • PHPUnit:如何模拟今天的日期而不将其作为参数传递?

    我正在我的班级上测试一种进行日期检查的方法 问题是该方法取决于今天的日期 每天都在变化 这使得测试变得困难 我如何模拟今天的日期 以便我的测试明天仍能通过 我对 PHP 一无所知 但在 Java 和 C 中 我会传递一些描述的 时钟 不是今
  • 如何将 CSV 文件的表值转换为数组?

    我的价值低于我的 CSV 文件的第一列 table border 1 tr th align left First Name th th align left Gender th th align left Nationality th t
  • 这里使用哪个 XML 解析器?

    我正在接收一个 XML 文件作为输入 其大小可能从几 KB 到更多 我通过网络获取该文件 我需要根据我的使用提取少量节点 因此大部分文档对我来说毫无用处 我没有记忆偏好 我只需要速度 考虑到这一切 我得出的结论是 这里不使用 DOM 由于
  • 从 Numpy 数组中的元素创建新的 Numpy 数组

    这题好像想不通对 numpy 非常陌生 我有一个 numpy 形状数组 200 1 1000 1000 对应于 图像数量 通道 x of image y of image 所以我有 200 个图像 每个通道有 1000x1000 像素 我想
  • Java 的 G1 垃圾收集器 (G1GC) 中的类卸载

    在Java 6中我们曾经使用下面的GC配置来防止Perm GenOutOfMemoryException多次重新部署我们的应用程序后 XX UseConcMarkSweepGC XX CMSClassUnloadingEnabled 我们正