< prev index next >

src/hotspot/share/jfr/periodic/jfrPeriodic.cpp

Print this page




 449   event.set_activeCount(ThreadService::get_live_thread_count());
 450   event.set_daemonCount(ThreadService::get_daemon_thread_count());
 451   event.set_accumulatedCount(ThreadService::get_total_thread_count());
 452   event.set_peakCount(ThreadService::get_peak_thread_count());
 453   event.commit();
 454 }
 455 
 456 TRACE_REQUEST_FUNC(ClassLoadingStatistics) {
 457   EventClassLoadingStatistics event;
 458   event.set_loadedClassCount(ClassLoadingService::loaded_class_count());
 459   event.set_unloadedClassCount(ClassLoadingService::unloaded_class_count());
 460   event.commit();
 461 }
 462 
 463 class JfrClassLoaderStatsClosure : public ClassLoaderStatsClosure {
 464 public:
 465   JfrClassLoaderStatsClosure() : ClassLoaderStatsClosure(NULL) {}
 466 
 467   bool do_entry(oop const& key, ClassLoaderStats* const& cls) {
 468     const ClassLoaderData* this_cld = cls->_class_loader != NULL ?
 469       java_lang_ClassLoader::loader_data(cls->_class_loader) : (ClassLoaderData*)NULL;
 470     const ClassLoaderData* parent_cld = cls->_parent != NULL ?
 471       java_lang_ClassLoader::loader_data(cls->_parent) : (ClassLoaderData*)NULL;
 472     EventClassLoaderStatistics event;
 473     event.set_classLoader(this_cld);
 474     event.set_parentClassLoader(parent_cld);
 475     event.set_classLoaderData((intptr_t)cls->_cld);
 476     event.set_classCount(cls->_classes_count);
 477     event.set_chunkSize(cls->_chunk_sz);
 478     event.set_blockSize(cls->_block_sz);
 479     event.set_unsafeAnonymousClassCount(cls->_anon_classes_count);
 480     event.set_unsafeAnonymousChunkSize(cls->_anon_chunk_sz);
 481     event.set_unsafeAnonymousBlockSize(cls->_anon_block_sz);
 482     event.commit();
 483     return true;
 484   }
 485 
 486   void createEvents(void) {
 487     _stats->iterate(this);
 488   }
 489 };
 490 
 491 class JfrClassLoaderStatsVMOperation : public ClassLoaderStatsVMOperation {




 449   event.set_activeCount(ThreadService::get_live_thread_count());
 450   event.set_daemonCount(ThreadService::get_daemon_thread_count());
 451   event.set_accumulatedCount(ThreadService::get_total_thread_count());
 452   event.set_peakCount(ThreadService::get_peak_thread_count());
 453   event.commit();
 454 }
 455 
 456 TRACE_REQUEST_FUNC(ClassLoadingStatistics) {
 457   EventClassLoadingStatistics event;
 458   event.set_loadedClassCount(ClassLoadingService::loaded_class_count());
 459   event.set_unloadedClassCount(ClassLoadingService::unloaded_class_count());
 460   event.commit();
 461 }
 462 
 463 class JfrClassLoaderStatsClosure : public ClassLoaderStatsClosure {
 464 public:
 465   JfrClassLoaderStatsClosure() : ClassLoaderStatsClosure(NULL) {}
 466 
 467   bool do_entry(oop const& key, ClassLoaderStats* const& cls) {
 468     const ClassLoaderData* this_cld = cls->_class_loader != NULL ?
 469       java_lang_ClassLoader::loader_data_acquire(cls->_class_loader) : NULL;
 470     const ClassLoaderData* parent_cld = cls->_parent != NULL ?
 471       java_lang_ClassLoader::loader_data_acquire(cls->_parent) : NULL;
 472     EventClassLoaderStatistics event;
 473     event.set_classLoader(this_cld);
 474     event.set_parentClassLoader(parent_cld);
 475     event.set_classLoaderData((intptr_t)cls->_cld);
 476     event.set_classCount(cls->_classes_count);
 477     event.set_chunkSize(cls->_chunk_sz);
 478     event.set_blockSize(cls->_block_sz);
 479     event.set_unsafeAnonymousClassCount(cls->_anon_classes_count);
 480     event.set_unsafeAnonymousChunkSize(cls->_anon_chunk_sz);
 481     event.set_unsafeAnonymousBlockSize(cls->_anon_block_sz);
 482     event.commit();
 483     return true;
 484   }
 485 
 486   void createEvents(void) {
 487     _stats->iterate(this);
 488   }
 489 };
 490 
 491 class JfrClassLoaderStatsVMOperation : public ClassLoaderStatsVMOperation {


< prev index next >