G1Demo.java 文件源码

java
阅读 18 收藏 0 点赞 0 评论 0

项目:java-perv 作者:
private static void subscribeForGc() {
        ManagementFactory.getGarbageCollectorMXBeans().stream().filter(bean -> bean instanceof NotificationEmitter).forEach(bean -> {
            ((NotificationEmitter) bean).addNotificationListener((notification, handback) -> {
//                System.err.println("Notified");
                if (GARBAGE_COLLECTION_NOTIFICATION.equals(notification.getType())) {
                    GarbageCollectionNotificationInfo info = from((CompositeData) notification.getUserData());
                    com.sun.management.GarbageCollectorMXBean mxBean = (com.sun.management.GarbageCollectorMXBean) handback;

//                    System.err.println("GC notification");

                    GcInfo gcInfo = info.getGcInfo();
                    if (gcInfo != null) {

                        System.out.println(info.getGcName() + ", " + info.getGcAction() + ", " + mxBean.getName() + ", " + info.getGcCause() + ", " + gcInfo.getMemoryUsageBeforeGc() + ", " + gcInfo.getMemoryUsageAfterGc());
                    }
                }
            }, null, bean);
        });
    }
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号